diff options
Diffstat (limited to 'libssh/packet.c')
-rw-r--r-- | libssh/packet.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libssh/packet.c b/libssh/packet.c index 4feca067..870efd4a 100644 --- a/libssh/packet.c +++ b/libssh/packet.c @@ -594,7 +594,7 @@ int packet_send(SSH_SESSION *session) { void packet_parse(SSH_SESSION *session) { STRING *error_s = NULL; char *error = NULL; - int type = session->in_packet.type; + u32 type = session->in_packet.type; u32 tmp; #ifdef HAVE_SSH1 @@ -652,9 +652,15 @@ void packet_parse(SSH_SESSION *session) { case SSH2_MSG_CHANNEL_EOF: case SSH2_MSG_CHANNEL_CLOSE: channel_handle(session,type); + return; case SSH2_MSG_IGNORE: case SSH2_MSG_DEBUG: return; + case SSH2_MSG_SERVICE_REQUEST: + case SSH2_MSG_USERAUTH_REQUEST: + case SSH2_MSG_CHANNEL_OPEN: + message_handle(session,type); + return; default: ssh_log(session, SSH_LOG_RARE, "Received unhandled packet %d", type); } |