The Samba-Bugzilla – Attachment 12559 Details for
Bug 12276
Group substitution for connected user fails
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
patch for 4.4
0001-s3-lib-Fix-G-substitution-in-AD-member-environment.patch (text/plain), 2.00 KB, created by
Andreas Schneider
on 2016-10-10 10:45:01 UTC
(
hide
)
Description:
patch for 4.4
Filename:
MIME Type:
Creator:
Andreas Schneider
Created:
2016-10-10 10:45:01 UTC
Size:
2.00 KB
patch
obsolete
>From 6dfc274ce5ae036a95ac2d7f6f9182c7f5a5b50f Mon Sep 17 00:00:00 2001 >From: Andreas Schneider <asn@samba.org> >Date: Mon, 19 Sep 2016 13:59:54 +0200 >Subject: [PATCH] s3-lib: Fix %G substitution in AD member environment > >If we are a domain member we should look up the user with the domain >name specified else it will only work if we have >'winbind use default domain' set. > >BUG: https://bugzilla.samba.org/show_bug.cgi?id=12276 > >Signed-off-by: Andreas Schneider <asn@samba.org> >Reviewed-by: Ralph Boehme <slow@samba.org> >(cherry picked from commit 619ca5f63c47ff8b021692aaa756dcb0d883b8dd) >--- > source3/lib/substitute.c | 24 ++++++++++++++++++------ > 1 file changed, 18 insertions(+), 6 deletions(-) > >diff --git a/source3/lib/substitute.c b/source3/lib/substitute.c >index 4e2ce9b..1f98327 100644 >--- a/source3/lib/substitute.c >+++ b/source3/lib/substitute.c >@@ -499,15 +499,18 @@ char *talloc_sub_basic(TALLOC_CTX *mem_ctx, > break; > case 'G' : { > struct passwd *pass; >+ bool is_domain_name = false; >+ const char *sep = lp_winbind_separator(); > > if (domain_name != NULL && domain_name[0] != '\0' && >- !strequal(domain_name, my_sam_name())) >- { >+ (lp_security() == SEC_ADS || >+ lp_security() == SEC_DOMAIN)) { > r = talloc_asprintf(tmp_ctx, > "%s%c%s", > domain_name, >- *lp_winbind_separator(), >+ *sep, > smb_name); >+ is_domain_name = true; > } else { > r = talloc_strdup(tmp_ctx, smb_name); > } >@@ -517,9 +520,18 @@ char *talloc_sub_basic(TALLOC_CTX *mem_ctx, > > pass = Get_Pwnam_alloc(tmp_ctx, r); > if (pass != NULL) { >- a_string = realloc_string_sub( >- a_string, "%G", >- gidtoname(pass->pw_gid)); >+ char *group_name; >+ >+ group_name = gidtoname(pass->pw_gid); >+ if (is_domain_name) { >+ p = strchr_m(group_name, *sep); >+ if (p != NULL) { >+ group_name = p + 1; >+ } >+ } >+ a_string = realloc_string_sub(a_string, >+ "%G", >+ group_name); > } > TALLOC_FREE(pass); > break; >-- >2.10.1 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Flags:
slow
:
review+
Actions:
View
Attachments on
bug 12276
:
12500
|
12558
| 12559 |
13173