diff options
author | djm <djm> | 2006-03-26 02:54:03 +0000 |
---|---|---|
committer | djm <djm> | 2006-03-26 02:54:03 +0000 |
commit | d373303ba3edd15f95168f005707da600fe13bbe (patch) | |
tree | 7f48d4a81522e1b65b8618a032dab126f2b10cef /sshconnect2.c | |
parent | 1c1486cece51f3c531474d120a51d469a2b0fe86 (diff) | |
download | openssh-d373303ba3edd15f95168f005707da600fe13bbe.tar.gz |
- djm@cvs.openbsd.org 2006/03/19 07:41:30
[sshconnect2.c]
memory leaks detected by Coverity via elad AT netbsd.org;
deraadt@ ok
Diffstat (limited to 'sshconnect2.c')
-rw-r--r-- | sshconnect2.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sshconnect2.c b/sshconnect2.c index b7aa96e3..f8d21489 100644 --- a/sshconnect2.c +++ b/sshconnect2.c @@ -513,8 +513,10 @@ userauth_gssapi(Authctxt *authctxt) } } - if (!ok) + if (!ok) { + ssh_gssapi_delete_ctx(&gssctxt); return 0; + } authctxt->methoddata=(void *)gssctxt; @@ -1330,6 +1332,7 @@ userauth_hostbased(Authctxt *authctxt) if (p == NULL) { error("userauth_hostbased: cannot get local ipaddr/name"); key_free(private); + xfree(blob); return 0; } len = strlen(p) + 2; @@ -1368,6 +1371,7 @@ userauth_hostbased(Authctxt *authctxt) error("key_sign failed"); xfree(chost); xfree(pkalg); + xfree(blob); return 0; } packet_start(SSH2_MSG_USERAUTH_REQUEST); @@ -1383,6 +1387,7 @@ userauth_hostbased(Authctxt *authctxt) xfree(signature); xfree(chost); xfree(pkalg); + xfree(blob); packet_send(); return 1; |