mirror of
https://github.com/samba-team/samba.git
synced 2025-01-10 01:18:15 +03:00
Add become_root/unbecome_root around one call of getsampwsid()
in create_token_from_username(). This caused set_nt_acl to
partially fail in certain circumstances.
This is expected to bring an improvement to bug #4308.
Michael
(This used to be commit e68671b595
)
This commit is contained in:
parent
862a7e6cb1
commit
ea33a1c22f
@ -721,6 +721,7 @@ NTSTATUS create_token_from_username(TALLOC_CTX *mem_ctx, const char *username,
|
||||
}
|
||||
|
||||
if (sid_check_is_in_our_domain(&user_sid)) {
|
||||
BOOL ret;
|
||||
|
||||
/* This is a passdb user, so ask passdb */
|
||||
|
||||
@ -731,7 +732,11 @@ NTSTATUS create_token_from_username(TALLOC_CTX *mem_ctx, const char *username,
|
||||
goto done;
|
||||
}
|
||||
|
||||
if (!pdb_getsampwsid(sam_acct, &user_sid)) {
|
||||
become_root();
|
||||
ret = pdb_getsampwsid(sam_acct, &user_sid);
|
||||
unbecome_root();
|
||||
|
||||
if (!ret) {
|
||||
DEBUG(1, ("pdb_getsampwsid(%s) for user %s failed\n",
|
||||
sid_string_static(&user_sid), username));
|
||||
DEBUGADD(1, ("Fall back to unix user %s\n", username));
|
||||
|
Loading…
Reference in New Issue
Block a user