summaryrefslogtreecommitdiff
path: root/source3/smbd
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2009-07-09 11:34:14 +0200
committerStefan Metzmacher <metze@samba.org>2009-07-10 12:24:24 +0200
commitbe1e5493c5aa323681d2843f37e93a0388e95f6a (patch)
tree277def23de5c47c9476ff907eb8bed579fa03ed9 /source3/smbd
parent24c8e786bcdf2d10e378b655e1df69c2533f7804 (diff)
downloadsamba-be1e5493c5aa323681d2843f37e93a0388e95f6a.tar.gz
samba-be1e5493c5aa323681d2843f37e93a0388e95f6a.tar.bz2
samba-be1e5493c5aa323681d2843f37e93a0388e95f6a.zip
s3:smbd: pass down the client pid to smbd_smb2_lock_send()
metze
Diffstat (limited to 'source3/smbd')
-rw-r--r--source3/smbd/smb2_lock.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/source3/smbd/smb2_lock.c b/source3/smbd/smb2_lock.c
index da57181e86..06e97b97b0 100644
--- a/source3/smbd/smb2_lock.c
+++ b/source3/smbd/smb2_lock.c
@@ -31,6 +31,7 @@ struct smbd_smb2_lock_element {
static struct tevent_req *smbd_smb2_lock_send(TALLOC_CTX *mem_ctx,
struct tevent_context *ev,
struct smbd_smb2_request *smb2req,
+ uint32_t in_smbpid,
uint64_t in_file_id_volatile,
uint16_t in_lock_count,
struct smbd_smb2_lock_element *in_locks);
@@ -44,6 +45,7 @@ NTSTATUS smbd_smb2_request_process_lock(struct smbd_smb2_request *req)
const int i = req->current_idx;
size_t expected_body_size = 0x30;
size_t body_size;
+ uint32_t in_smbpid;
uint16_t in_lock_count;
uint64_t in_file_id_persistent;
uint64_t in_file_id_volatile;
@@ -64,6 +66,8 @@ NTSTATUS smbd_smb2_request_process_lock(struct smbd_smb2_request *req)
return smbd_smb2_request_error(req, NT_STATUS_INVALID_PARAMETER);
}
+ in_smbpid = IVAL(inhdr, SMB2_HDR_PID);
+
in_lock_count = CVAL(inbody, 0x02);
/* 0x04 - 4 bytes reserved */
in_file_id_persistent = BVAL(inbody, 0x08);
@@ -111,6 +115,7 @@ NTSTATUS smbd_smb2_request_process_lock(struct smbd_smb2_request *req)
subreq = smbd_smb2_lock_send(req,
req->conn->smb2.event_ctx,
req,
+ in_smbpid,
in_file_id_volatile,
in_lock_count,
in_locks);
@@ -175,6 +180,7 @@ struct smbd_smb2_lock_state {
static struct tevent_req *smbd_smb2_lock_send(TALLOC_CTX *mem_ctx,
struct tevent_context *ev,
struct smbd_smb2_request *smb2req,
+ uint32_t in_smbpid,
uint64_t in_file_id_volatile,
uint16_t in_lock_count,
struct smbd_smb2_lock_element *in_locks)