summaryrefslogtreecommitdiff
path: root/source3/smbd
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2010-07-04 20:14:27 +0200
committerVolker Lendecke <vl@samba.org>2010-07-05 11:06:31 +0200
commite168b85f00540892508c888a17b07e1981e9ad5a (patch)
tree3566dfb4eef57ee35db3e595d5dbc5837c3571d4 /source3/smbd
parentaa217afc46f3be4b6e5dbdc7289044e661924ab3 (diff)
downloadsamba-e168b85f00540892508c888a17b07e1981e9ad5a.tar.gz
samba-e168b85f00540892508c888a17b07e1981e9ad5a.tar.bz2
samba-e168b85f00540892508c888a17b07e1981e9ad5a.zip
s3: Remove procid_self() from fill_deferred_open_entry()
Diffstat (limited to 'source3/smbd')
-rw-r--r--source3/smbd/open.c15
-rw-r--r--source3/smbd/smb2_create.c3
2 files changed, 12 insertions, 6 deletions
diff --git a/source3/smbd/open.c b/source3/smbd/open.c
index e0fcfb9679..f1c32e0585 100644
--- a/source3/smbd/open.c
+++ b/source3/smbd/open.c
@@ -1090,7 +1090,8 @@ static void defer_open(struct share_mode_lock *lck,
state->id, (char *)state, sizeof(*state))) {
exit_server("push_deferred_open_message_smb failed");
}
- add_deferred_open(lck, req->mid, request_time, state->id);
+ add_deferred_open(lck, req->mid, request_time,
+ sconn_server_id(req->sconn), state->id);
}
@@ -1454,14 +1455,15 @@ static NTSTATUS calculate_access_mask(connection_struct *conn,
Remove the deferred open entry under lock.
****************************************************************************/
-void remove_deferred_open_entry(struct file_id id, uint64_t mid)
+void remove_deferred_open_entry(struct file_id id, uint64_t mid,
+ struct server_id pid)
{
struct share_mode_lock *lck = get_share_mode_lock(talloc_tos(), id,
NULL, NULL, NULL);
if (lck == NULL) {
DEBUG(0, ("could not get share mode lock\n"));
} else {
- del_deferred_open_entry(lck, mid);
+ del_deferred_open_entry(lck, mid, pid);
TALLOC_FREE(lck);
}
}
@@ -1574,7 +1576,9 @@ static NTSTATUS open_file_ntcreate(connection_struct *conn,
see if this has timed out. */
/* Remove the deferred open entry under lock. */
- remove_deferred_open_entry(state->id, req->mid);
+ remove_deferred_open_entry(
+ state->id, req->mid,
+ sconn_server_id(req->sconn));
/* Ensure we don't reprocess this message. */
remove_deferred_open_message_smb(req->mid);
@@ -2271,7 +2275,8 @@ static NTSTATUS open_file_ntcreate(connection_struct *conn,
/* If this is a successful open, we must remove any deferred open
* records. */
if (req != NULL) {
- del_deferred_open_entry(lck, req->mid);
+ del_deferred_open_entry(lck, req->mid,
+ sconn_server_id(req->sconn));
}
TALLOC_FREE(lck);
diff --git a/source3/smbd/smb2_create.c b/source3/smbd/smb2_create.c
index 60bbde215d..47a85f8cf3 100644
--- a/source3/smbd/smb2_create.c
+++ b/source3/smbd/smb2_create.c
@@ -1155,7 +1155,8 @@ static bool smbd_smb2_create_cancel(struct tevent_req *req)
smb2req = state->smb2req;
mid = get_mid_from_smb2req(smb2req);
- remove_deferred_open_entry(state->id, mid);
+ remove_deferred_open_entry(state->id, mid,
+ sconn_server_id(smb2req->sconn));
remove_deferred_open_message_smb2_internal(smb2req, mid);
smb2req->cancelled = true;