summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/include/proto.h3
-rw-r--r--source3/smbd/blocking.c4
-rw-r--r--source3/smbd/trans2.c2
3 files changed, 5 insertions, 4 deletions
diff --git a/source3/include/proto.h b/source3/include/proto.h
index 8bcef3c49c..13682f3368 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -5372,7 +5372,8 @@ void cancel_pending_lock_requests_by_fid(files_struct *fsp,
enum file_close_type close_type);
void remove_pending_lock_requests_by_mid_smb1(
struct smbd_server_connection *sconn, uint64_t mid);
-bool blocking_lock_was_deferred_smb1(uint64_t mid);
+bool blocking_lock_was_deferred_smb1(
+ struct smbd_server_connection *sconn, uint64_t mid);
struct blocking_lock_record *blocking_lock_cancel_smb1(files_struct *fsp,
uint64_t smblctx,
uint64_t offset,
diff --git a/source3/smbd/blocking.c b/source3/smbd/blocking.c
index f87841e66d..36e850a95b 100644
--- a/source3/smbd/blocking.c
+++ b/source3/smbd/blocking.c
@@ -677,9 +677,9 @@ void remove_pending_lock_requests_by_mid_smb1(
Currently only called from the SMB1 unix extensions POSIX lock code.
*****************************************************************************/
-bool blocking_lock_was_deferred_smb1(uint64_t mid)
+bool blocking_lock_was_deferred_smb1(
+ struct smbd_server_connection *sconn, uint64_t mid)
{
- struct smbd_server_connection *sconn = smbd_server_conn;
struct blocking_lock_record *blr, *next = NULL;
for(blr = sconn->smb1.locks.blocking_lock_queue; blr; blr = next) {
diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c
index 6d15fda648..47435419dd 100644
--- a/source3/smbd/trans2.c
+++ b/source3/smbd/trans2.c
@@ -7972,7 +7972,7 @@ static void call_trans2setfilepathinfo(connection_struct *conn,
/* We have re-scheduled this call. */
return;
}
- if (blocking_lock_was_deferred_smb1(req->mid)) {
+ if (blocking_lock_was_deferred_smb1(req->sconn, req->mid)) {
/* We have re-scheduled this call. */
return;
}