[SCM] Samba Shared Repository - branch master updated - 5f20d219c39311126108ba74d8072814ecabc8fe

Andrew Bartlett abartlet at samba.org
Tue Dec 16 05:24:20 GMT 2008


The branch, master has been updated
       via  5f20d219c39311126108ba74d8072814ecabc8fe (commit)
       via  9057c2522adf8d17a07fd3c747d7fed06a523af6 (commit)
      from  4380a374c1dec46ad77939604e548f0c79d9e2ec (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 5f20d219c39311126108ba74d8072814ecabc8fe
Merge: 9057c2522adf8d17a07fd3c747d7fed06a523af6 4380a374c1dec46ad77939604e548f0c79d9e2ec
Author: Andrew Bartlett <abartlet at samba.org>
Date:   Tue Dec 16 16:23:10 2008 +1100

    Merge branch 'master' of ssh://git.samba.org/data/git/samba into abartlet-devel

commit 9057c2522adf8d17a07fd3c747d7fed06a523af6
Author: Andrew Bartlett <abartlet at samba.org>
Date:   Tue Dec 16 11:25:29 2008 +1100

    A more-commented version of rpc_server crash fix, matching closer the
    previous behaviour for the 'bad bind' case.
    
    (It is only close, not matching - Windows 2008 sends a different,
    non-zero, assoc_group_id each time)
    
    Andrew Bartlett

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

Summary of changes:
 source4/rpc_server/dcerpc_server.c |   15 ++++++++++++++-
 1 files changed, 14 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/rpc_server/dcerpc_server.c b/source4/rpc_server/dcerpc_server.c
index 5f055ae..d27a8b9 100644
--- a/source4/rpc_server/dcerpc_server.c
+++ b/source4/rpc_server/dcerpc_server.c
@@ -648,7 +648,20 @@ static NTSTATUS dcesrv_bind(struct dcesrv_call_state *call)
 	pkt.pfc_flags = DCERPC_PFC_FLAG_FIRST | DCERPC_PFC_FLAG_LAST | extra_flags;
 	pkt.u.bind_ack.max_xmit_frag = 0x2000;
 	pkt.u.bind_ack.max_recv_frag = 0x2000;
-	pkt.u.bind_ack.assoc_group_id = iface?call->context->assoc_group_id:0;
+
+	/*
+	  make it possible for iface->bind() to specify the assoc_group_id
+	  This helps the openchange mapiproxy plugin to work correctly.
+	  
+	  metze
+	*/
+	if (call->context) {
+		pkt.u.bind_ack.assoc_group_id = call->context->assoc_group_id;
+	} else {
+		/* we better pick something - this chosen so as to send a non zero assoc_group_id (matching windows), it also matches samba3 */
+		pkt.u.bind_ack.assoc_group_id = SAMBA_ASSOC_GROUP;
+	}
+
 	if (iface) {
 		/* FIXME: Use pipe name as specified by endpoint instead of interface name */
 		pkt.u.bind_ack.secondary_address = talloc_asprintf(call, "\\PIPE\\%s", iface->name);


-- 
Samba Shared Repository


More information about the samba-cvs mailing list