From 6fcd0940e38fff46d6a28c47950c5ea127937db6 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Tue, 14 Jan 2020 16:49:28 +0100 Subject: [PATCH] packet_crypt: Check return values from AEAD deciphering Signed-off-by: Jakub Jelen Reviewed-by: Andreas Schneider (cherry picked from commit e31e7b0406f4c2b85831bf7ad90d57d660646108) --- src/packet_crypt.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/packet_crypt.c b/src/packet_crypt.c index 168fcc72..95d438c8 100644 --- a/src/packet_crypt.c +++ b/src/packet_crypt.c @@ -60,7 +60,7 @@ uint32_t ssh_packet_decrypt_len(ssh_session session, crypto = ssh_packet_get_current_crypto(session, SSH_DIRECTION_IN); if (crypto != NULL) { if (crypto->in_cipher->aead_decrypt_length != NULL) { - crypto->in_cipher->aead_decrypt_length( + rc = crypto->in_cipher->aead_decrypt_length( crypto->in_cipher, source, destination, crypto->in_cipher->lenfield_blocksize, session->recv_seq); @@ -71,9 +71,9 @@ uint32_t ssh_packet_decrypt_len(ssh_session session, source, 0, crypto->in_cipher->blocksize); - if (rc < 0) { - return 0; - } + } + if (rc < 0) { + return 0; } } else { memcpy(destination, source, 8);