svn commit: samba r10833 - in branches/tmp/samba4-winsrepl: . source/ldap_server

metze at samba.org metze at samba.org
Sat Oct 8 09:56:30 GMT 2005


Author: metze
Date: 2005-10-08 09:56:29 +0000 (Sat, 08 Oct 2005)
New Revision: 10833

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

Log:
 r13497 at SERNOX (orig r10832):  metze | 2005-10-08 11:55:38 +0200
 free the old session info
 
 metze

Modified:
   branches/tmp/samba4-winsrepl/
   branches/tmp/samba4-winsrepl/source/ldap_server/ldap_bind.c


Changeset:

Property changes on: branches/tmp/samba4-winsrepl
___________________________________________________________________
Name: svk:merge
   - 0c0555d6-39d7-0310-84fc-f1cc0bd64818:/branches/SAMBA_4_0:10830
3a72dc49-98ff-0310-ab52-9b7ed7945d91:/local/samba4:9495
a953eb74-4aff-0310-a63c-855d20285ebb:/local/samba4:11632
   + 0c0555d6-39d7-0310-84fc-f1cc0bd64818:/branches/SAMBA_4_0:10832
3a72dc49-98ff-0310-ab52-9b7ed7945d91:/local/samba4:9495
a953eb74-4aff-0310-a63c-855d20285ebb:/local/samba4:11632

Modified: branches/tmp/samba4-winsrepl/source/ldap_server/ldap_bind.c
===================================================================
--- branches/tmp/samba4-winsrepl/source/ldap_server/ldap_bind.c	2005-10-08 09:55:38 UTC (rev 10832)
+++ branches/tmp/samba4-winsrepl/source/ldap_server/ldap_bind.c	2005-10-08 09:56:29 UTC (rev 10833)
@@ -105,6 +105,7 @@
 		errstr = NULL;
 	} else if (NT_STATUS_IS_OK(status)) {
 		struct ldapsrv_partition *part;
+		struct auth_session_info *old_session_info;
 
 		result = LDAP_SUCCESS;
 		errstr = NULL;
@@ -112,11 +113,15 @@
 		    gensec_have_feature(call->conn->gensec, GENSEC_FEATURE_SIGN)) {
 			call->conn->enable_wrap = True;
 		}
+		old_session_info = call->conn->session_info;
+		call->conn->session_info = NULL;
 		status = gensec_session_info(call->conn->gensec, &call->conn->session_info);
 		if (!NT_STATUS_IS_OK(status)) {
+			call->conn->session_info = old_session_info;
 			result = LDAP_OPERATIONS_ERROR;
 			errstr = talloc_asprintf(reply, "SASL:[%s]: Failed to get session info: %s", req->creds.SASL.mechanism, nt_errstr(status));
 		} else {
+			talloc_free(old_session_info);
 			for (part = call->conn->partitions; part; part = part->next) {
 				if (!part->ops->Bind) {
 					continue;



More information about the samba-cvs mailing list