1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-11 05:18:09 +03:00

r17406: We need to do a translation of winbind separator -> '\\' in

lookup_name_smbconf, otherwise

force user = domain+administrator

can not work. Also attempt to fix the 'valid users = domain+group' bug at the
same time.

Volker
(This used to be commit 255475901c)
This commit is contained in:
Volker Lendecke 2006-08-04 21:07:32 +00:00 committed by Gerald (Jerry) Carter
parent 7cc7fc51c6
commit 6361d151a4
2 changed files with 20 additions and 3 deletions

View File

@ -395,8 +395,25 @@ BOOL lookup_name_smbconf(TALLOC_CTX *mem_ctx,
char *qualified_name;
/* NB. No winbindd_separator here as lookup_name needs \\' */
if (strchr_m(full_name, '\\')) {
if (strchr_m(full_name, *lp_winbind_separator())) {
/* The name is already qualified with a domain. */
if (*lp_winbind_separator() != '\\') {
char *p, *tmp;
/* lookup_name() needs '\\' as a separator */
tmp = talloc_strdup(mem_ctx, full_name);
if (!tmp) {
return False;
}
p = strchr_m(tmp, *lp_winbind_separator());
SMB_ASSERT(p != NULL);
*p = '\\';
full_name = tmp;
}
return lookup_name(mem_ctx, full_name, flags,
ret_domain, ret_name,
ret_sid, ret_type);

View File

@ -97,7 +97,7 @@ static BOOL token_contains_name(TALLOC_CTX *mem_ctx,
}
if (!do_group_checks(&name, &prefix)) {
if (!lookup_name(mem_ctx, name, LOOKUP_NAME_ALL,
if (!lookup_name_smbconf(mem_ctx, name, LOOKUP_NAME_ALL,
NULL, NULL, &sid, &type)) {
DEBUG(5, ("lookup_name %s failed\n", name));
return False;
@ -112,7 +112,7 @@ static BOOL token_contains_name(TALLOC_CTX *mem_ctx,
for (/* initialized above */ ; *prefix != '\0'; prefix++) {
if (*prefix == '+') {
if (!lookup_name(mem_ctx, name,
if (!lookup_name_smbconf(mem_ctx, name,
LOOKUP_NAME_ALL|LOOKUP_NAME_GROUP,
NULL, NULL, &sid, &type)) {
DEBUG(5, ("lookup_name %s failed\n", name));