summaryrefslogtreecommitdiff
path: root/auth2-gss.c
diff options
context:
space:
mode:
authorDarren Tucker <dtucker@zip.com.au>2013-06-02 07:31:17 +1000
committerDarren Tucker <dtucker@zip.com.au>2013-06-02 07:31:17 +1000
commita627d42e51ffa71e014d7b2d2c07118122fd3ec3 (patch)
tree7bda769de81f509e28d800916fa20abd37906d79 /auth2-gss.c
parentc7aad0058c957afeb26a3f703e8cb0eddeb62365 (diff)
- djm@cvs.openbsd.org 2013/05/17 00:13:13
[xmalloc.h cipher.c sftp-glob.c ssh-keyscan.c ssh.c sftp-common.c ssh-ecdsa.c auth2-chall.c compat.c readconf.c kexgexs.c monitor.c gss-genr.c cipher-3des1.c kex.c monitor_wrap.c ssh-pkcs11-client.c auth-options.c rsa.c auth2-pubkey.c sftp.c hostfile.c auth2.c servconf.c auth.c authfile.c xmalloc.c uuencode.c sftp-client.c auth2-gss.c sftp-server.c bufaux.c mac.c session.c jpake.c kexgexc.c sshconnect.c auth-chall.c auth2-passwd.c sshconnect1.c buffer.c kexecdhs.c kexdhs.c ssh-rsa.c auth1.c ssh-pkcs11.c auth2-kbdint.c kexdhc.c sshd.c umac.c ssh-dss.c auth2-jpake.c bufbn.c clientloop.c monitor_mm.c scp.c roaming_client.c serverloop.c key.c auth-rsa.c ssh-pkcs11-helper.c ssh-keysign.c ssh-keygen.c match.c channels.c sshconnect2.c addrmatch.c mux.c canohost.c kexecdhc.c schnorr.c ssh-add.c misc.c auth2-hostbased.c ssh-agent.c bufec.c groupaccess.c dns.c packet.c readpass.c authfd.c moduli.c] bye, bye xfree(); ok markus@
Diffstat (limited to 'auth2-gss.c')
-rw-r--r--auth2-gss.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/auth2-gss.c b/auth2-gss.c
index de1bd0644..638d8f88e 100644
--- a/auth2-gss.c
+++ b/auth2-gss.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: auth2-gss.c,v 1.19 2013/04/05 00:14:00 djm Exp $ */ 1/* $OpenBSD: auth2-gss.c,v 1.20 2013/05/17 00:13:13 djm Exp $ */
2 2
3/* 3/*
4 * Copyright (c) 2001-2003 Simon Wilkinson. All rights reserved. 4 * Copyright (c) 2001-2003 Simon Wilkinson. All rights reserved.
@@ -81,8 +81,7 @@ userauth_gssapi(Authctxt *authctxt)
81 do { 81 do {
82 mechs--; 82 mechs--;
83 83
84 if (doid) 84 free(doid);
85 xfree(doid);
86 85
87 present = 0; 86 present = 0;
88 doid = packet_get_string(&len); 87 doid = packet_get_string(&len);
@@ -101,7 +100,7 @@ userauth_gssapi(Authctxt *authctxt)
101 gss_release_oid_set(&ms, &supported); 100 gss_release_oid_set(&ms, &supported);
102 101
103 if (!present) { 102 if (!present) {
104 xfree(doid); 103 free(doid);
105 authctxt->server_caused_failure = 1; 104 authctxt->server_caused_failure = 1;
106 return (0); 105 return (0);
107 } 106 }
@@ -109,7 +108,7 @@ userauth_gssapi(Authctxt *authctxt)
109 if (GSS_ERROR(PRIVSEP(ssh_gssapi_server_ctx(&ctxt, &goid)))) { 108 if (GSS_ERROR(PRIVSEP(ssh_gssapi_server_ctx(&ctxt, &goid)))) {
110 if (ctxt != NULL) 109 if (ctxt != NULL)
111 ssh_gssapi_delete_ctx(&ctxt); 110 ssh_gssapi_delete_ctx(&ctxt);
112 xfree(doid); 111 free(doid);
113 authctxt->server_caused_failure = 1; 112 authctxt->server_caused_failure = 1;
114 return (0); 113 return (0);
115 } 114 }
@@ -122,7 +121,7 @@ userauth_gssapi(Authctxt *authctxt)
122 packet_put_string(doid, len); 121 packet_put_string(doid, len);
123 122
124 packet_send(); 123 packet_send();
125 xfree(doid); 124 free(doid);
126 125
127 dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_TOKEN, &input_gssapi_token); 126 dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_TOKEN, &input_gssapi_token);
128 dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_ERRTOK, &input_gssapi_errtok); 127 dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_ERRTOK, &input_gssapi_errtok);
@@ -153,7 +152,7 @@ input_gssapi_token(int type, u_int32_t plen, void *ctxt)
153 maj_status = PRIVSEP(ssh_gssapi_accept_ctx(gssctxt, &recv_tok, 152 maj_status = PRIVSEP(ssh_gssapi_accept_ctx(gssctxt, &recv_tok,
154 &send_tok, &flags)); 153 &send_tok, &flags));
155 154
156 xfree(recv_tok.value); 155 free(recv_tok.value);
157 156
158 if (GSS_ERROR(maj_status)) { 157 if (GSS_ERROR(maj_status)) {
159 if (send_tok.length != 0) { 158 if (send_tok.length != 0) {
@@ -208,7 +207,7 @@ input_gssapi_errtok(int type, u_int32_t plen, void *ctxt)
208 maj_status = PRIVSEP(ssh_gssapi_accept_ctx(gssctxt, &recv_tok, 207 maj_status = PRIVSEP(ssh_gssapi_accept_ctx(gssctxt, &recv_tok,
209 &send_tok, NULL)); 208 &send_tok, NULL));
210 209
211 xfree(recv_tok.value); 210 free(recv_tok.value);
212 211
213 /* We can't return anything to the client, even if we wanted to */ 212 /* We can't return anything to the client, even if we wanted to */
214 dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_TOKEN, NULL); 213 dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_TOKEN, NULL);
@@ -281,7 +280,7 @@ input_gssapi_mic(int type, u_int32_t plen, void *ctxt)
281 logit("GSSAPI MIC check failed"); 280 logit("GSSAPI MIC check failed");
282 281
283 buffer_free(&b); 282 buffer_free(&b);
284 xfree(mic.value); 283 free(mic.value);
285 284
286 authctxt->postponed = 0; 285 authctxt->postponed = 0;
287 dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_TOKEN, NULL); 286 dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_TOKEN, NULL);