mirror of
https://github.com/samba-team/samba.git
synced 2024-12-23 17:34:34 +03:00
s3: auth: Plumb in the SamInfo3_handle_sids() utility function into passwd_to_SamInfo3().
Core fix for: https://bugzilla.samba.org/show_bug.cgi?id=11044 Based on code from Michael Zeis <mzeis.quantum@gmail.com> Signed-off-by: Jeremy Allison <jra@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org>
This commit is contained in:
parent
d20b2d3972
commit
60895e62fe
@ -671,7 +671,8 @@ NTSTATUS make_server_info_pw(TALLOC_CTX *mem_ctx,
|
||||
status = passwd_to_SamInfo3(result,
|
||||
unix_username,
|
||||
pwd,
|
||||
&result->info3);
|
||||
&result->info3,
|
||||
&result->extra);
|
||||
if (!NT_STATUS_IS_OK(status)) {
|
||||
goto done;
|
||||
}
|
||||
|
@ -305,7 +305,8 @@ NTSTATUS samu_to_SamInfo3(TALLOC_CTX *mem_ctx,
|
||||
NTSTATUS passwd_to_SamInfo3(TALLOC_CTX *mem_ctx,
|
||||
const char *unix_username,
|
||||
const struct passwd *pwd,
|
||||
struct netr_SamInfo3 **pinfo3);
|
||||
struct netr_SamInfo3 **pinfo3,
|
||||
struct extra_auth_info *extra);
|
||||
struct netr_SamInfo3 *copy_netr_SamInfo3(TALLOC_CTX *mem_ctx,
|
||||
const struct netr_SamInfo3 *orig);
|
||||
|
||||
|
@ -539,7 +539,8 @@ NTSTATUS samu_to_SamInfo3(TALLOC_CTX *mem_ctx,
|
||||
NTSTATUS passwd_to_SamInfo3(TALLOC_CTX *mem_ctx,
|
||||
const char *unix_username,
|
||||
const struct passwd *pwd,
|
||||
struct netr_SamInfo3 **pinfo3)
|
||||
struct netr_SamInfo3 **pinfo3,
|
||||
struct extra_auth_info *extra)
|
||||
{
|
||||
struct netr_SamInfo3 *info3;
|
||||
NTSTATUS status;
|
||||
@ -635,8 +636,17 @@ NTSTATUS passwd_to_SamInfo3(TALLOC_CTX *mem_ctx,
|
||||
|
||||
ZERO_STRUCT(domain_sid);
|
||||
|
||||
sid_copy(&domain_sid, &user_sid);
|
||||
sid_split_rid(&domain_sid, &info3->base.rid);
|
||||
status = SamInfo3_handle_sids(unix_username,
|
||||
&user_sid,
|
||||
&group_sid,
|
||||
info3,
|
||||
&domain_sid,
|
||||
extra);
|
||||
|
||||
if (!NT_STATUS_IS_OK(status)) {
|
||||
goto done;
|
||||
}
|
||||
|
||||
info3->base.domain_sid = dom_sid_dup(info3, &domain_sid);
|
||||
|
||||
ok = sid_peek_check_rid(&domain_sid, &group_sid,
|
||||
|
Loading…
Reference in New Issue
Block a user