mirror of
https://github.com/samba-team/samba.git
synced 2025-01-27 14:04:05 +03:00
s3:libsmb: pass ImpersonationLevel to cli_ntcreate1_send()
BUG: https://bugzilla.samba.org/show_bug.cgi?id=7113 BUG: https://bugzilla.samba.org/show_bug.cgi?id=11892 BUG: https://bugzilla.samba.org/show_bug.cgi?id=13676 Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Tim Beale <timbeale@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
This commit is contained in:
parent
850aef94dc
commit
ed0deadf62
@ -1951,6 +1951,7 @@ static struct tevent_req *cli_ntcreate1_send(TALLOC_CTX *mem_ctx,
|
|||||||
uint32_t ShareAccess,
|
uint32_t ShareAccess,
|
||||||
uint32_t CreateDisposition,
|
uint32_t CreateDisposition,
|
||||||
uint32_t CreateOptions,
|
uint32_t CreateOptions,
|
||||||
|
uint32_t ImpersonationLevel,
|
||||||
uint8_t SecurityFlags)
|
uint8_t SecurityFlags)
|
||||||
{
|
{
|
||||||
struct tevent_req *req, *subreq;
|
struct tevent_req *req, *subreq;
|
||||||
@ -1985,7 +1986,7 @@ static struct tevent_req *cli_ntcreate1_send(TALLOC_CTX *mem_ctx,
|
|||||||
SIVAL(vwv+17, 1, CreateDisposition);
|
SIVAL(vwv+17, 1, CreateDisposition);
|
||||||
SIVAL(vwv+19, 1, CreateOptions |
|
SIVAL(vwv+19, 1, CreateOptions |
|
||||||
(cli->backup_intent ? FILE_OPEN_FOR_BACKUP_INTENT : 0));
|
(cli->backup_intent ? FILE_OPEN_FOR_BACKUP_INTENT : 0));
|
||||||
SIVAL(vwv+21, 1, 0x02); /* ImpersonationLevel */
|
SIVAL(vwv+21, 1, ImpersonationLevel);
|
||||||
SCVAL(vwv+23, 1, SecurityFlags);
|
SCVAL(vwv+23, 1, SecurityFlags);
|
||||||
|
|
||||||
bytes = talloc_array(state, uint8_t, 0);
|
bytes = talloc_array(state, uint8_t, 0);
|
||||||
@ -2126,7 +2127,7 @@ struct tevent_req *cli_ntcreate_send(TALLOC_CTX *mem_ctx,
|
|||||||
subreq = cli_ntcreate1_send(
|
subreq = cli_ntcreate1_send(
|
||||||
state, ev, cli, fname, create_flags, desired_access,
|
state, ev, cli, fname, create_flags, desired_access,
|
||||||
file_attributes, share_access, create_disposition,
|
file_attributes, share_access, create_disposition,
|
||||||
create_options, security_flags);
|
create_options, impersonation_level, security_flags);
|
||||||
}
|
}
|
||||||
if (tevent_req_nomem(subreq, req)) {
|
if (tevent_req_nomem(subreq, req)) {
|
||||||
return tevent_req_post(req, ev);
|
return tevent_req_post(req, ev);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user