svn commit: samba r22078 - in branches/SAMBA_3_0/source/libads: .

metze at samba.org metze at samba.org
Wed Apr 4 14:50:40 GMT 2007


Author: metze
Date: 2007-04-04 14:50:39 +0000 (Wed, 04 Apr 2007)
New Revision: 22078

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=22078

Log:
fix memory leak in not often used code, we only use it if the server
doesn't support GSS-SPNEGO in SASL

can someone please review this, maybe it's also for 3.0.25

metze
Modified:
   branches/SAMBA_3_0/source/libads/sasl.c


Changeset:
Modified: branches/SAMBA_3_0/source/libads/sasl.c
===================================================================
--- branches/SAMBA_3_0/source/libads/sasl.c	2007-04-04 14:24:44 UTC (rev 22077)
+++ branches/SAMBA_3_0/source/libads/sasl.c	2007-04-04 14:50:39 UTC (rev 22078)
@@ -301,7 +301,7 @@
 	uint32 minor_status;
 	gss_name_t serv_name;
 	gss_buffer_desc input_name;
-	gss_ctx_id_t context_handle;
+	gss_ctx_id_t context_handle = GSS_C_NO_CONTEXT;
 	gss_OID mech_type = GSS_C_NULL_OID;
 	gss_buffer_desc output_token, input_token;
 	uint32 ret_flags, conf_state;
@@ -368,8 +368,6 @@
 		return ADS_ERROR_GSS(gss_rc, minor_status);
 	}
 
-	context_handle = GSS_C_NO_CONTEXT;
-
 	input_token.value = NULL;
 	input_token.length = 0;
 
@@ -478,6 +476,8 @@
 failed:
 
 	gss_release_name(&minor_status, &serv_name);
+	if (context_handle != GSS_C_NO_CONTEXT)
+		gss_delete_sec_context(&min_status, &context_handle, GSS_C_NO_BUFFER);
 	krb5_free_principal(ctx, principal);
 	krb5_free_context(ctx);	
 



More information about the samba-cvs mailing list