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

Karolin Seeger kseeger at samba.org
Thu Nov 17 11:44:16 MST 2011


The branch, v3-6-test has been updated
       via  5935630 Fix bug #8562 - talloc: double free error.
      from  d8bc158 libcli-cldap: avoid the case local == remote == NULL (cherry picked from commit 4d2d33ee09941ddb211e21788c01d886730224c2)

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


- Log -----------------------------------------------------------------
commit 5935630fcd15e2618b854fa3c78f3e500690cf35
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Nov 3 14:30:11 2011 -0700

    Fix bug #8562 - talloc: double free error.
    
    Ensure we don't access an undefined pointer.
    
    Autobuild-User: Jeremy Allison <jra at samba.org>
    Autobuild-Date: Fri Nov  4 00:09:46 CET 2011 on sn-devel-104
    (cherry picked from commit 767c54d8dd9596718579699398392ae234b40aa2)

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

Summary of changes:
 source3/rpc_server/netlogon/srv_netlog_nt.c |   11 +++++++++--
 1 files changed, 9 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/rpc_server/netlogon/srv_netlog_nt.c b/source3/rpc_server/netlogon/srv_netlog_nt.c
index ecdfac7..3fd93bc 100644
--- a/source3/rpc_server/netlogon/srv_netlog_nt.c
+++ b/source3/rpc_server/netlogon/srv_netlog_nt.c
@@ -1251,7 +1251,7 @@ NTSTATUS _netr_ServerPasswordSet2(struct pipes_struct *p,
 				  struct netr_ServerPasswordSet2 *r)
 {
 	NTSTATUS status;
-	struct netlogon_creds_CredentialState *creds;
+	struct netlogon_creds_CredentialState *creds = NULL;
 	DATA_BLOB plaintext;
 	struct samr_CryptPassword password_buf;
 	struct samr_Password nt_hash;
@@ -1265,9 +1265,14 @@ NTSTATUS _netr_ServerPasswordSet2(struct pipes_struct *p,
 	unbecome_root();
 
 	if (!NT_STATUS_IS_OK(status)) {
+		const char *computer_name = "<unknown>";
+
+		if (creds && creds->computer_name) {
+			computer_name = creds->computer_name;
+		}
 		DEBUG(2,("_netr_ServerPasswordSet2: netlogon_creds_server_step "
 			"failed. Rejecting auth request from client %s machine account %s\n",
-			r->in.computer_name, creds->computer_name));
+			r->in.computer_name, computer_name));
 		TALLOC_FREE(creds);
 		return status;
 	}
@@ -1277,6 +1282,7 @@ NTSTATUS _netr_ServerPasswordSet2(struct pipes_struct *p,
 	netlogon_creds_arcfour_crypt(creds, password_buf.data, 516);
 
 	if (!extract_pw_from_buffer(p->mem_ctx, password_buf.data, &plaintext)) {
+		TALLOC_FREE(creds);
 		return NT_STATUS_WRONG_PASSWORD;
 	}
 
@@ -1287,6 +1293,7 @@ NTSTATUS _netr_ServerPasswordSet2(struct pipes_struct *p,
 						   p->msg_ctx,
 						   creds->account_name,
 						   &nt_hash);
+	TALLOC_FREE(creds);
 	return status;
 }
 


-- 
Samba Shared Repository


More information about the samba-cvs mailing list