aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelen <jjelen@redhat.com>2019-10-02 17:01:43 +0200
committerJakub Jelen <jjelen@redhat.com>2019-10-25 13:42:07 +0200
commite9e8292370ca1090fbb16a4c55d590c88c9d41dd (patch)
tree3ee71044b320f74007bc1ab41fc84f4874557815
parent5a0177def02d3810bc2745aa41d084ac5bdab1cd (diff)
downloadlibssh-e9e8292370ca1090fbb16a4c55d590c88c9d41dd.tar.gz
libssh-e9e8292370ca1090fbb16a4c55d590c88c9d41dd.tar.xz
libssh-e9e8292370ca1090fbb16a4c55d590c88c9d41dd.zip
packet: On failure, do not use uninitialized crypto
Signed-off-by: Jakub Jelen <jjelen@redhat.com> Reviewed-by: Andreas Schneider <asn@cryptomilk.org> Reviewed-by: Anderson Toshiyuki Sasaki <ansasaki@redhat.com>
-rw-r--r--src/packet.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/packet.c b/src/packet.c
index 7855866a..dc844830 100644
--- a/src/packet.c
+++ b/src/packet.c
@@ -1946,6 +1946,8 @@ ssh_packet_set_newkeys(ssh_session session,
session->next_crypto->decryptkey,
session->next_crypto->decryptIV);
if (rc < 0) {
+ /* On error, make sure it is not used */
+ session->next_crypto->used = 0;
return SSH_ERROR;
}
@@ -1954,6 +1956,8 @@ ssh_packet_set_newkeys(ssh_session session,
session->next_crypto->encryptkey,
session->next_crypto->encryptIV);
if (rc < 0) {
+ /* On error, make sure it is not used */
+ session->next_crypto->used = 0;
return SSH_ERROR;
}