aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelen <jjelen@redhat.com>2020-01-14 16:49:28 +0100
committerAndreas Schneider <asn@cryptomilk.org>2020-01-23 10:31:44 +0100
commit6fcd0940e38fff46d6a28c47950c5ea127937db6 (patch)
treec7eb9a09d7220f0ae0542d212392995137128b3f
parent0c8dbf5c810662eac6de21a12b31db9d16966c5b (diff)
downloadlibssh-6fcd0940e38fff46d6a28c47950c5ea127937db6.tar.gz
libssh-6fcd0940e38fff46d6a28c47950c5ea127937db6.tar.xz
libssh-6fcd0940e38fff46d6a28c47950c5ea127937db6.zip
packet_crypt: Check return values from AEAD deciphering
Signed-off-by: Jakub Jelen <jjelen@redhat.com> Reviewed-by: Andreas Schneider <asn@cryptomilk.org> (cherry picked from commit e31e7b0406f4c2b85831bf7ad90d57d660646108)
-rw-r--r--src/packet_crypt.c8
1 files 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);