[SCM] Samba Shared Repository - branch master updated

Andreas Schneider asn at samba.org
Mon Mar 9 12:24:03 MDT 2015

The branch, master has been updated
       via  f5d0204 s3-winbind: Fix chached user group lookup of trusted domains.
      from  02f6cfd torture-krb5: Add an initial test for s4u2self behaviour


- Log -----------------------------------------------------------------
commit f5d0204bfa1eb641fe7697613c1f773b6a7e65de
Author: Michael Adam <obnox at samba.org>
Date:   Mon Mar 9 15:15:37 2015 +0100

    s3-winbind: Fix chached user group lookup of trusted domains.
    If a user group lookup has aleady been done before with a machine
    account we did always return the incomplete information from the cache.
    This patch makes sure we return the correct group information from the
    netsamlogon cache.
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11143
    Pair-Programmed-With: Andreas Schneider <asn at samba.org>
    Signed-off-by: Michael Adam <obnox at samba.org>
    Signed-off-by: Andreas Schneider <asn at samba.org>
    Reviewed-by: Volker Lendecke <vl at samba.org>
    Autobuild-User(master): Andreas Schneider <asn at cryptomilk.org>
    Autobuild-Date(master): Mon Mar  9 19:23:25 CET 2015 on sn-devel-104


Summary of changes:
 source3/winbindd/wb_lookupusergroups.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

Changeset truncated at 500 lines:

diff --git a/source3/winbindd/wb_lookupusergroups.c b/source3/winbindd/wb_lookupusergroups.c
index b91de78..f74a206 100644
--- a/source3/winbindd/wb_lookupusergroups.c
+++ b/source3/winbindd/wb_lookupusergroups.c
@@ -37,6 +37,7 @@ struct tevent_req *wb_lookupusergroups_send(TALLOC_CTX *mem_ctx,
 	struct tevent_req *req, *subreq;
 	struct wb_lookupusergroups_state *state;
+	NTSTATUS status;
 	req = tevent_req_create(mem_ctx, &state,
 				struct wb_lookupusergroups_state);
@@ -45,6 +46,16 @@ struct tevent_req *wb_lookupusergroups_send(TALLOC_CTX *mem_ctx,
 	sid_copy(&state->sid, sid);
+	status = lookup_usergroups_cached(NULL,
+					  state,
+					  &state->sid,
+					  &state->sids.num_sids,
+					  &state->sids.sids);
+	if (NT_STATUS_IS_OK(status)) {
+		tevent_req_done(req);
+		return tevent_req_post(req, ev);
+	}
 	subreq = dcerpc_wbint_LookupUserGroups_send(
 		state, ev, dom_child_handle(domain), &state->sid, &state->sids);
 	if (tevent_req_nomem(subreq, req)) {

Samba Shared Repository

More information about the samba-cvs mailing list