[SCM] Samba Shared Repository - branch master updated

Jeremy Allison jra at samba.org
Mon Dec 6 13:19:02 MST 2010


The branch, master has been updated
       via  ab1b857 s3: Fix bug 7842: WINBIND_LOOKUPRIDS does not return the proper domain name
       via  8f8d188 s3: Fix bug 7841: WINBINDD_LOOKUPRIDS asks the wrong domain
       via  cb496c6 s3: Fix bug 7843: Expand the local SAMs aliases
      from  b73e4e3 s3-waf: add pam configure checks.

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


- Log -----------------------------------------------------------------
commit ab1b857f58f58dbc871fc444aa1dfefe4a3bfaeb
Author: Volker Lendecke <vl at samba.org>
Date:   Sat Dec 4 20:16:00 2010 +0100

    s3: Fix bug 7842: WINBIND_LOOKUPRIDS does not return the proper domain name
    
    Autobuild-User: Jeremy Allison <jra at samba.org>
    Autobuild-Date: Mon Dec  6 21:18:07 CET 2010 on sn-devel-104

commit 8f8d188c195d1d587bfdc056b1c6845a046b6e35
Author: Volker Lendecke <vl at samba.org>
Date:   Sat Dec 4 20:31:36 2010 +0100

    s3: Fix bug 7841: WINBINDD_LOOKUPRIDS asks the wrong domain

commit cb496c6d243854e309dcff23f832a5f88914b3cf
Author: Jeremy Allison <jra at samba.org>
Date:   Sun Dec 5 20:40:21 2010 +0100

    s3: Fix bug 7843: Expand the local SAMs aliases

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

Summary of changes:
 source3/librpc/idl/wbint.idl           |    1 +
 source3/winbindd/wb_gettoken.c         |    4 ++--
 source3/winbindd/winbindd_dual_srv.c   |    2 ++
 source3/winbindd/winbindd_lookuprids.c |    5 +++--
 4 files changed, 8 insertions(+), 4 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/librpc/idl/wbint.idl b/source3/librpc/idl/wbint.idl
index 4ac3693..470fb8b 100644
--- a/source3/librpc/idl/wbint.idl
+++ b/source3/librpc/idl/wbint.idl
@@ -142,6 +142,7 @@ interface wbint
 
     NTSTATUS wbint_LookupRids(
 	[in] wbint_RidArray *rids,
+	[out,string,charset(UTF8)] char **domain_name,
 	[out] wbint_Principals *names
 	);
 
diff --git a/source3/winbindd/wb_gettoken.c b/source3/winbindd/wb_gettoken.c
index 5755ffa..d1c8285 100644
--- a/source3/winbindd/wb_gettoken.c
+++ b/source3/winbindd/wb_gettoken.c
@@ -107,7 +107,7 @@ static void wb_gettoken_gotgroups(struct tevent_req *subreq)
 	/*
 	 * Expand our domain's aliases
 	 */
-	domain = find_our_domain();
+	domain = find_domain_from_sid_noinit(get_global_sam_sid());
 	if (domain == NULL) {
 		tevent_req_nterror(req, NT_STATUS_INTERNAL_ERROR);
 		return;
@@ -138,7 +138,7 @@ static void wb_gettoken_gotlocalgroups(struct tevent_req *subreq)
 		tevent_req_nterror(req, status);
 		return;
 	}
-	domain = find_our_domain();
+	domain = find_domain_from_sid_noinit(get_global_sam_sid());
 	if (!wb_add_rids_to_sids(state, &state->num_sids, &state->sids,
 				 &domain->sid, num_rids, rids)) {
 		tevent_req_nterror(req, NT_STATUS_NO_MEMORY);
diff --git a/source3/winbindd/winbindd_dual_srv.c b/source3/winbindd/winbindd_dual_srv.c
index b661fb3..1501fd8 100644
--- a/source3/winbindd/winbindd_dual_srv.c
+++ b/source3/winbindd/winbindd_dual_srv.c
@@ -385,6 +385,8 @@ NTSTATUS _wbint_LookupRids(struct pipes_struct *p, struct wbint_LookupRids *r)
 		return status;
 	}
 
+	*r->out.domain_name = talloc_move(r->out.domain_name, &domain_name);
+
 	result = talloc_array(p->mem_ctx, struct wbint_Principal,
 			      r->in.rids->num_rids);
 	if (result == NULL) {
diff --git a/source3/winbindd/winbindd_lookuprids.c b/source3/winbindd/winbindd_lookuprids.c
index 6e3d5c5..5577ad4 100644
--- a/source3/winbindd/winbindd_lookuprids.c
+++ b/source3/winbindd/winbindd_lookuprids.c
@@ -62,7 +62,7 @@ struct tevent_req *winbindd_lookuprids_send(TALLOC_CTX *mem_ctx,
 		return tevent_req_post(req, ev);
 	}
 
-	domain = find_domain_from_sid_noinit(&sid);
+	domain = find_lookup_domain_from_sid(&sid);
 	if (domain == NULL) {
 		DEBUG(5, ("Domain for sid %s not found\n",
 			  sid_string_dbg(&sid)));
@@ -84,7 +84,8 @@ struct tevent_req *winbindd_lookuprids_send(TALLOC_CTX *mem_ctx,
 	}
 
 	subreq = dcerpc_wbint_LookupRids_send(
-		state, ev, domain->child.binding_handle, &state->rids, &state->names);
+		state, ev, domain->child.binding_handle, &state->rids,
+		&state->domain_name, &state->names);
 	if (tevent_req_nomem(subreq, req)) {
 		return tevent_req_post(req, ev);
 	}


-- 
Samba Shared Repository


More information about the samba-cvs mailing list