From 2e905394292f881d08ab7d11591a23cfaa2c94b8 Mon Sep 17 00:00:00 2001 From: Jacob Nevins Date: Thu, 28 Oct 2004 00:23:44 +0000 Subject: [PATCH] Malcolm Rowe spotted that we broke display of SSH2_MSG_DEBUG messages while fixing `vuln-ssh2-debug', by missing out a field. In most cases (always_display = 0) we would log a zero-length or truncated message. (Also add a prototype for ssh2_pkt_getbool().) [originally from svn r4718] --- ssh.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ssh.c b/ssh.c index 9661e2af..983e148b 100644 --- a/ssh.c +++ b/ssh.c @@ -525,6 +525,7 @@ static void ssh2_set_window(struct ssh_channel *c, unsigned newwin); static int ssh_sendbuffer(void *handle); static void ssh_do_close(Ssh ssh); static unsigned long ssh_pkt_getuint32(Ssh ssh); +static int ssh2_pkt_getbool(Ssh ssh); static void ssh_pkt_getstring(Ssh ssh, char **p, int *length); struct rdpkt1_state_tag { @@ -1198,7 +1199,10 @@ static int ssh2_rdpkt(Ssh ssh, unsigned char **data, int *datalen) /* log the debug message */ char *buf, *msg; int msglen; + int always_display; + /* XXX maybe we should actually take notice of this */ + always_display = ssh2_pkt_getbool(ssh); ssh_pkt_getstring(ssh, &msg, &msglen); buf = dupprintf("Remote debug message: %.*s", msglen, msg);