cvs version / testing

Markus Friedl markus at openbsd.org
Thu Mar 20 09:29:11 EST 2003


On Wed, Mar 19, 2003 at 11:16:46AM -0800, Steve G wrote:
> Hello,
> 
> The tcpmux report was a mistake on my part, please ignore
> that part of the e-mail.
> 
> I also have some more memory leaks to share from a longer
> valgrind session:
> 
> ==31863== 1 bytes in 1 blocks are definitely lost in loss
> record 1 of 387
> ==31863==    at 0x40164650: malloc (vg_clientfuncs.c:100)
> ==31863==    by 0x8070044: xmalloc (xmalloc.c:28)
> ==31863==    by 0x80633D9: buffer_get_string (bufaux.c:230)
> ==31863==    by 0x805C6A2: mm_answer_keyallowed
> (monitor.c:777)
> ==31863==    by 0x805BE89: monitor_read (monitor.c:371)
> ==31863==    by 0x805BB9E: monitor_child_preauth
> (monitor.c:280)
> ==31863==    by 0x804CF97: privsep_preauth (sshd.c:600)
> ==31863==    by 0x804DEFE: main (sshd.c:1532)
> ==31863==

is this about the 'chost' in:
        chost = buffer_get_string(m, NULL);

this variable gets freed in mm_answer_keyverify().

you could try this patch:

Index: monitor.c
===================================================================
RCS file: /cvs/openssh_cvs/monitor.c,v
retrieving revision 1.36
diff -u -r1.36 monitor.c
--- monitor.c	10 Mar 2003 00:21:18 -0000	1.36
+++ monitor.c	19 Mar 2003 22:30:07 -0000
@@ -298,6 +298,7 @@
 				authctxt->failures++;
 		}
 	}
+	monitor_reset_key_state();
 
 	if (!authctxt->valid)
 		fatal("%s: authenticated invalid user", __func__);




More information about the openssh-unix-dev mailing list