From 796448276c37fdd76dd0770c88a6d73d1f65c18e Mon Sep 17 00:00:00 2001 From: Darren Tucker Date: Wed, 8 Oct 2003 17:37:58 +1000 Subject: [PATCH] - deraadt@cvs.openbsd.org 2003/10/07 21:58:28 [sshconnect2.c] set ptr to NULL after free --- ChangeLog | 9 ++++++--- sshconnect2.c | 13 +++++++++---- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index aa0f798b0..2ec3e8294 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,11 +2,14 @@ - (dtucker) OpenBSD CVS Sync - dtucker@cvs.openbsd.org 2003/10/07 01:47:27 [sshconnect2.c] - Don't use logit for banner, since it truncates to MSGBUFSIZ; bz #668 & #707. - ok markus@ + Don't use logit for banner, since it truncates to MSGBUFSIZ; bz #668 & + #707. ok markus@ - djm@cvs.openbsd.org 2003/10/07 07:04:16 [sftp-int.c] sftp quoting fix from admorten AT umich.edu; ok markus@ + - deraadt@cvs.openbsd.org 2003/10/07 21:58:28 + [sshconnect2.c] + set ptr to NULL after free 20031007 - (djm) Delete autom4te.cache after autoreconf @@ -1302,4 +1305,4 @@ - Fix sshd BindAddress and -b options for systems using fake-getaddrinfo. Report from murple@murple.net, diagnosis from dtucker@zip.com.au -$Id: ChangeLog,v 1.3065 2003/10/08 07:34:38 dtucker Exp $ +$Id: ChangeLog,v 1.3066 2003/10/08 07:37:58 dtucker Exp $ diff --git a/sshconnect2.c b/sshconnect2.c index 4e3ae2de7..2ef4201ce 100644 --- a/sshconnect2.c +++ b/sshconnect2.c @@ -23,7 +23,7 @@ */ #include "includes.h" -RCSID("$OpenBSD: sshconnect2.c,v 1.125 2003/10/07 01:47:27 dtucker Exp $"); +RCSID("$OpenBSD: sshconnect2.c,v 1.126 2003/10/07 21:58:28 deraadt Exp $"); #include "openbsd-compat/sys-queue.h" @@ -358,6 +358,7 @@ void input_userauth_banner(int type, u_int32_t seq, void *ctxt) { char *msg, *lang; + debug3("input_userauth_banner"); msg = packet_get_string(NULL); lang = packet_get_string(NULL); @@ -373,10 +374,14 @@ input_userauth_success(int type, u_int32_t seq, void *ctxt) Authctxt *authctxt = ctxt; if (authctxt == NULL) fatal("input_userauth_success: no authentication context"); - if (authctxt->authlist) + if (authctxt->authlist) { xfree(authctxt->authlist); - if (authctxt->methoddata) + authctxt->authlist = NULL; + } + if (authctxt->methoddata) { xfree(authctxt->methoddata); + authctxt->methoddata = NULL; + } authctxt->success = 1; /* break out */ } @@ -609,7 +614,7 @@ input_gssapi_token(int type, u_int32_t plen, void *ctxt) packet_check_eom(); - status=ssh_gssapi_init_ctx(gssctxt, options.gss_deleg_creds, + status = ssh_gssapi_init_ctx(gssctxt, options.gss_deleg_creds, &recv_tok, &send_tok, NULL); xfree(recv_tok.value);