diff options
author | Volker Lendecke <vl@samba.org> | 2009-08-02 10:43:05 +0200 |
---|---|---|
committer | Volker Lendecke <vl@samba.org> | 2009-08-02 11:24:48 +0200 |
commit | 4f147388c0512fc291cc53764c017d7117154afc (patch) | |
tree | b4a4ee3fba145c2c2710c4c782d653b245d96fdc /source3/winbindd/winbindd_passdb.c | |
parent | 62fec968193e8a96ccffef216aba30ffb681d33a (diff) | |
download | samba-4f147388c0512fc291cc53764c017d7117154afc.tar.gz samba-4f147388c0512fc291cc53764c017d7117154afc.tar.bz2 samba-4f147388c0512fc291cc53764c017d7117154afc.zip |
Refactor 9b78af1f: Fix lookupname recursion
Pass a "flags" argument instead of the original winbind command down the
name_to_sid chain. This way we are independent of the winbind commands and
can take the decision at a much higher level
Diffstat (limited to 'source3/winbindd/winbindd_passdb.c')
-rw-r--r-- | source3/winbindd/winbindd_passdb.c | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/source3/winbindd/winbindd_passdb.c b/source3/winbindd/winbindd_passdb.c index b959bfc9ad..b6e572d197 100644 --- a/source3/winbindd/winbindd_passdb.c +++ b/source3/winbindd/winbindd_passdb.c @@ -88,25 +88,15 @@ static NTSTATUS enum_local_groups(struct winbindd_domain *domain, /* convert a single name to a sid in a domain */ static NTSTATUS name_to_sid(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx, - enum winbindd_cmd original_cmd, const char *domain_name, const char *name, + uint32_t flags, DOM_SID *sid, enum lsa_SidType *type) { const char *fullname; - uint32 flags = LOOKUP_NAME_ALL; - - switch ( original_cmd ) { - case WINBINDD_LOOKUPNAME: - /* This call is ok */ - break; - default: - /* Avoid any NSS calls in the lookup_name by default */ - flags |= LOOKUP_NAME_NO_NSS; - DEBUG(10,("winbindd_passdb: limiting name_to_sid() to explicit mappings\n")); - break; - } + + flags |= LOOKUP_NAME_ALL; if (domain_name && domain_name[0] && strchr_m(name, '\\') == NULL) { fullname = talloc_asprintf(mem_ctx, "%s\\%s", |