From 8f67f873ace91964da066c421986e260aceba75b Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Thu, 22 Apr 2010 23:52:19 -0700 Subject: Make deferred opens (NT_STATUS_SHARING_VIOLATION) work over SMB2. Makes SMB2Create call re-entrant internally. Now this infrastructure is in place, oplocks will follow shortly. Tested with Win7 client and with W2K8R2. Jeremy. --- source3/smbd/process.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'source3/smbd/process.c') diff --git a/source3/smbd/process.c b/source3/smbd/process.c index 8d3c65a802..a4838987a3 100644 --- a/source3/smbd/process.c +++ b/source3/smbd/process.c @@ -726,19 +726,19 @@ static struct pending_message_list *get_deferred_open_message_smb(uint64_t mid) Get the state data queued by this mid. ****************************************************************************/ -bool get_deferred_open_message_state(uint64_t mid, +bool get_deferred_open_message_state(struct smb_request *smbreq, struct timeval *p_request_time, void **pp_state) { struct pending_message_list *pml; if (smbd_server_conn->allow_smb2) { - return get_deferred_open_message_state_smb2(mid, + return get_deferred_open_message_state_smb2(smbreq->smb2req, p_request_time, pp_state); } - pml = get_deferred_open_message_smb(mid); + pml = get_deferred_open_message_smb(smbreq->mid); if (!pml) { return false; } @@ -764,7 +764,7 @@ bool push_deferred_open_message_smb(struct smb_request *req, struct timeval end_time; if (req->smb2req) { - return push_deferred_open_message_smb2(req, + return push_deferred_open_message_smb2(req->smb2req, request_time, timeout, private_data, -- cgit