[SCM] Samba Shared Repository - branch v3-4-test updated

Karolin Seeger kseeger at samba.org
Mon Mar 29 00:55:50 MDT 2010


The branch, v3-4-test has been updated
       via  36ecc6b... s3 ntlm_auth: Don't malloc data that will be talloc_free()d
      from  dc83d03... Fix bug #7269 - Job management commands don't work for CUPS queues.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-4-test


- Log -----------------------------------------------------------------
commit 36ecc6bed9bbf7ed6437433d89ec9d49da43e5ee
Author: Kai Blin <kai at samba.org>
Date:   Fri Mar 26 14:28:43 2010 -0700

    s3 ntlm_auth: Don't malloc data that will be talloc_free()d
    
    This fixes bug #7290
    Thanks to Mohan <mohann at silver-peak.com> for the bug report.

-----------------------------------------------------------------------

Summary of changes:
 source3/utils/ntlm_auth.c |   24 ++++++++++++------------
 1 files changed, 12 insertions(+), 12 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/utils/ntlm_auth.c b/source3/utils/ntlm_auth.c
index 70c1d05..f84f1fd 100644
--- a/source3/utils/ntlm_auth.c
+++ b/source3/utils/ntlm_auth.c
@@ -1082,18 +1082,18 @@ static void offer_gss_spnego_mechs(void) {
 
 	/* Server negTokenInit (mech offerings) */
 	spnego.type = SPNEGO_NEG_TOKEN_INIT;
-	spnego.negTokenInit.mechTypes = SMB_XMALLOC_ARRAY(const char *, 2);
+	spnego.negTokenInit.mechTypes = talloc_array(ctx, const char *, 2);
 #ifdef HAVE_KRB5
-	spnego.negTokenInit.mechTypes[0] = smb_xstrdup(OID_KERBEROS5_OLD);
-	spnego.negTokenInit.mechTypes[1] = smb_xstrdup(OID_NTLMSSP);
+	spnego.negTokenInit.mechTypes[0] = talloc_strdup(ctx, OID_KERBEROS5_OLD);
+	spnego.negTokenInit.mechTypes[1] = talloc_strdup(ctx, OID_NTLMSSP);
 	spnego.negTokenInit.mechTypes[2] = NULL;
 #else
-	spnego.negTokenInit.mechTypes[0] = smb_xstrdup(OID_NTLMSSP);
+	spnego.negTokenInit.mechTypes[0] = talloc_strdup(ctx, OID_NTLMSSP);
 	spnego.negTokenInit.mechTypes[1] = NULL;
 #endif
 
 
-	spnego.negTokenInit.mechListMIC = data_blob(principal,
+	spnego.negTokenInit.mechListMIC = data_blob_talloc(ctx, principal,
 						    strlen(principal));
 
 	len = write_spnego_data(&token, &spnego);
@@ -1218,8 +1218,8 @@ static void manage_gss_spnego_request(struct ntlm_auth_state *state,
 				  request.negTokenInit.mechToken.length);
 
 			response.type = SPNEGO_NEG_TOKEN_TARG;
-			response.negTokenTarg.supportedMech = SMB_STRDUP(OID_NTLMSSP);
-			response.negTokenTarg.mechListMIC = data_blob_null;
+			response.negTokenTarg.supportedMech = talloc_strdup(ctx, OID_NTLMSSP);
+			response.negTokenTarg.mechListMIC = data_blob_talloc(ctx, NULL, 0);
 
 			status = ntlmssp_update(ntlmssp_state,
 						       request.negTokenInit.mechToken,
@@ -1243,9 +1243,9 @@ static void manage_gss_spnego_request(struct ntlm_auth_state *state,
 			}
 
 			response.type = SPNEGO_NEG_TOKEN_TARG;
-			response.negTokenTarg.supportedMech = SMB_STRDUP(OID_KERBEROS5_OLD);
-			response.negTokenTarg.mechListMIC = data_blob_null;
-			response.negTokenTarg.responseToken = data_blob_null;
+			response.negTokenTarg.supportedMech = talloc_strdup(ctx, OID_KERBEROS5_OLD);
+			response.negTokenTarg.mechListMIC = data_blob_talloc(ctx, NULL, 0);
+			response.negTokenTarg.responseToken = data_blob_talloc(ctx, NULL, 0);
 
 			status = ads_verify_ticket(mem_ctx, lp_realm(), 0,
 						   &request.negTokenInit.mechToken,
@@ -1304,8 +1304,8 @@ static void manage_gss_spnego_request(struct ntlm_auth_state *state,
 					       &response.negTokenTarg.responseToken);
 
 		response.type = SPNEGO_NEG_TOKEN_TARG;
-		response.negTokenTarg.supportedMech = SMB_STRDUP(OID_NTLMSSP);
-		response.negTokenTarg.mechListMIC = data_blob_null;
+		response.negTokenTarg.supportedMech = talloc_strdup(ctx, OID_NTLMSSP);
+		response.negTokenTarg.mechListMIC = data_blob_talloc(ctx, NULL, 0);
 
 		if (NT_STATUS_IS_OK(status)) {
 			user = SMB_STRDUP(ntlmssp_state->user);


-- 
Samba Shared Repository


More information about the samba-cvs mailing list