aboutsummaryrefslogtreecommitdiff
path: root/libssh/packet.c
diff options
context:
space:
mode:
Diffstat (limited to 'libssh/packet.c')
-rw-r--r--libssh/packet.c8
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);
}