summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/smbd/open.c2
-rw-r--r--source3/smbd/process.c9
-rw-r--r--source3/smbd/proto.h3
3 files changed, 8 insertions, 6 deletions
diff --git a/source3/smbd/open.c b/source3/smbd/open.c
index 510dfe030c..e5496fdd14 100644
--- a/source3/smbd/open.c
+++ b/source3/smbd/open.c
@@ -1621,7 +1621,7 @@ static NTSTATUS open_file_ntcreate(connection_struct *conn,
sconn_server_id(req->sconn));
/* Ensure we don't reprocess this message. */
- remove_deferred_open_message_smb(req->mid);
+ remove_deferred_open_message_smb(req->sconn, req->mid);
}
}
diff --git a/source3/smbd/process.c b/source3/smbd/process.c
index 86e834789f..a2678e5e0c 100644
--- a/source3/smbd/process.c
+++ b/source3/smbd/process.c
@@ -582,7 +582,7 @@ static void smbd_deferred_open_timer(struct event_context *ev,
/* If it's still there and was processed, remove it. */
msg = get_deferred_open_message_smb(mid);
if (msg && msg->processed) {
- remove_deferred_open_message_smb(mid);
+ remove_deferred_open_message_smb(smbd_server_conn, mid);
}
}
@@ -652,12 +652,13 @@ static bool push_queued_message(struct smb_request *req,
Function to delete a sharing violation open message by mid.
****************************************************************************/
-void remove_deferred_open_message_smb(uint64_t mid)
+void remove_deferred_open_message_smb(struct smbd_server_connection *sconn,
+ uint64_t mid)
{
struct pending_message_list *pml;
- if (smbd_server_conn->using_smb2) {
- remove_deferred_open_message_smb2(smbd_server_conn, mid);
+ if (sconn->using_smb2) {
+ remove_deferred_open_message_smb2(sconn, mid);
return;
}
diff --git a/source3/smbd/proto.h b/source3/smbd/proto.h
index 2b24f70930..c12d92b901 100644
--- a/source3/smbd/proto.h
+++ b/source3/smbd/proto.h
@@ -771,7 +771,8 @@ int srv_set_message(char *buf,
int num_words,
int num_bytes,
bool zero);
-void remove_deferred_open_message_smb(uint64_t mid);
+void remove_deferred_open_message_smb(struct smbd_server_connection *sconn,
+ uint64_t mid);
void schedule_deferred_open_message_smb(uint64_t mid);
bool open_was_deferred(uint64_t mid);
bool get_deferred_open_message_state(struct smb_request *smbreq,