diff options
Diffstat (limited to 'source4/libcli/raw/rawtrans.c')
-rw-r--r-- | source4/libcli/raw/rawtrans.c | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/source4/libcli/raw/rawtrans.c b/source4/libcli/raw/rawtrans.c index 8e16e5b911..1df5209523 100644 --- a/source4/libcli/raw/rawtrans.c +++ b/source4/libcli/raw/rawtrans.c @@ -37,7 +37,7 @@ static struct smbcli_request *smb_raw_trans_backend_send(struct smbcli_tree *tre uint16_t clear_flags2; uint32_t pid; uint16_t tid; - uint16_t uid; + struct smbXcli_session *session = NULL; const char *pipe_name = NULL; uint8_t s; uint32_t timeout_msec; @@ -55,7 +55,10 @@ static struct smbcli_request *smb_raw_trans_backend_send(struct smbcli_tree *tre pid = SVAL(req->out.hdr, HDR_PID); pid |= SVAL(req->out.hdr, HDR_PIDHIGH)<<16; tid = SVAL(req->out.hdr, HDR_TID); - uid = SVAL(req->out.hdr, HDR_UID); + + if (req->session) { + session = req->session->smbXcli; + } clear_flags = ~additional_flags; clear_flags2 = ~additional_flags2; @@ -86,7 +89,8 @@ static struct smbcli_request *smb_raw_trans_backend_send(struct smbcli_tree *tre additional_flags2, clear_flags2, timeout_msec, - pid, tid, uid, + pid, tid, + session, pipe_name, 0xFFFF, /* fid */ 0, /* function */ @@ -259,7 +263,7 @@ struct smbcli_request *smb_raw_nttrans_send(struct smbcli_tree *tree, uint16_t clear_flags2; uint32_t pid; uint16_t tid; - uint16_t uid; + struct smbXcli_session *session = NULL; uint32_t timeout_msec; uint32_t tmp; @@ -275,7 +279,10 @@ struct smbcli_request *smb_raw_nttrans_send(struct smbcli_tree *tree, pid = SVAL(req->out.hdr, HDR_PID); pid |= SVAL(req->out.hdr, HDR_PIDHIGH)<<16; tid = SVAL(req->out.hdr, HDR_TID); - uid = SVAL(req->out.hdr, HDR_UID); + + if (req->session) { + session = req->session->smbXcli; + } clear_flags = ~additional_flags; clear_flags2 = ~additional_flags2; @@ -302,7 +309,8 @@ struct smbcli_request *smb_raw_nttrans_send(struct smbcli_tree *tree, additional_flags2, clear_flags2, timeout_msec, - pid, tid, uid, + pid, tid, + session, NULL, /* pipe_name */ 0xFFFF, /* fid */ parms->in.function, |