From 19433dca008c6ab93b31866a620ab3feef946628 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Fri, 15 Aug 2014 10:22:30 +0200 Subject: [PATCH] messages: Check return value of ssh_buffer_unpack(). CID: 1230356 Signed-off-by: Andreas Schneider Reviewed-by: Aris Adamantiadis --- src/messages.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/messages.c b/src/messages.c index 4216cb51..5a6963e8 100644 --- a/src/messages.c +++ b/src/messages.c @@ -860,6 +860,7 @@ SSH_PACKET_CALLBACK(ssh_packet_userauth_info_response){ uint32_t nanswers; uint32_t i; ssh_string tmp; + int rc; ssh_message msg = NULL; @@ -887,7 +888,11 @@ SSH_PACKET_CALLBACK(ssh_packet_userauth_info_response){ msg->auth_request.username = NULL; #endif - ssh_buffer_unpack(packet, "d", &nanswers); + rc = ssh_buffer_unpack(packet, "d", &nanswers); + if (rc != SSH_OK) { + ssh_set_error_invalid(session); + goto error; + } if (session->kbdint == NULL) { SSH_LOG(SSH_LOG_PROTOCOL, "Warning: Got a keyboard-interactive "