From: Volker Lendecke Date: Mon, 4 Nov 2019 12:06:20 +0000 (+0100) Subject: smbd: Use share_mode_watch_send() X-Git-Tag: ldb-2.1.0~622 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=24f56aefb487a6b269baf55b6840670666fbf0f3;p=thirdparty%2Fsamba.git smbd: Use share_mode_watch_send() This removes some dependencies on share_mode_data->record Signed-off-by: Volker Lendecke Reviewed-by: Jeremy Allison --- diff --git a/source3/smbd/blocking.c b/source3/smbd/blocking.c index 131c74b69da..fbedcea05aa 100644 --- a/source3/smbd/blocking.c +++ b/source3/smbd/blocking.c @@ -585,8 +585,8 @@ static void smbd_smb1_do_locks_try(struct tevent_req *req) } setup_retry: - subreq = dbwrap_watched_watch_send( - state, state->ev, lck->data->record, blocking_pid); + subreq = share_mode_watch_send( + state, state->ev, lck->data->id, blocking_pid); if (tevent_req_nomem(subreq, req)) { goto done; } @@ -626,10 +626,10 @@ static void smbd_smb1_do_locks_retry(struct tevent_req *subreq) return; } - status = dbwrap_watched_watch_recv(subreq, NULL, NULL); + status = share_mode_watch_recv(subreq, NULL, NULL); TALLOC_FREE(subreq); - DBG_DEBUG("dbwrap_watched_watch_recv returned %s\n", + DBG_DEBUG("share_mode_watch_recv returned %s\n", nt_errstr(status)); /* diff --git a/source3/smbd/open.c b/source3/smbd/open.c index fa990cacd5e..1d4b86bed6f 100644 --- a/source3/smbd/open.c +++ b/source3/smbd/open.c @@ -2702,10 +2702,11 @@ static void defer_open(struct share_mode_lock *lck, DBG_DEBUG("defering mid %" PRIu64 "\n", req->mid); - watch_req = dbwrap_watched_watch_send(watch_state, - req->sconn->ev_ctx, - lck->data->record, - (struct server_id){0}); + watch_req = share_mode_watch_send( + watch_state, + req->sconn->ev_ctx, + lck->data->id, + (struct server_id){0}); if (watch_req == NULL) { exit_server("Could not watch share mode record"); } @@ -2730,7 +2731,7 @@ static void defer_open_done(struct tevent_req *req) NTSTATUS status; bool ret; - status = dbwrap_watched_watch_recv(req, NULL, NULL); + status = share_mode_watch_recv(req, NULL, NULL); TALLOC_FREE(req); if (!NT_STATUS_IS_OK(status)) { DEBUG(5, ("dbwrap_watched_watch_recv returned %s\n", @@ -2822,13 +2823,13 @@ static bool setup_poll_open( } if (lck != NULL) { - open_rec->watch_req = dbwrap_watched_watch_send( + open_rec->watch_req = share_mode_watch_send( open_rec, req->sconn->ev_ctx, - lck->data->record, + lck->data->id, (struct server_id) {0}); if (open_rec->watch_req == NULL) { - DBG_WARNING("dbwrap_watched_watch_send failed\n"); + DBG_WARNING("share_mode_watch_send failed\n"); TALLOC_FREE(open_rec); return false; } @@ -2858,7 +2859,7 @@ static void poll_open_done(struct tevent_req *subreq) NTSTATUS status; bool ok; - status = dbwrap_watched_watch_recv(subreq, NULL, NULL); + status = share_mode_watch_recv(subreq, NULL, NULL); TALLOC_FREE(subreq); DBG_DEBUG("dbwrap_watched_watch_recv returned %s\n", nt_errstr(status)); diff --git a/source3/smbd/smb2_lock.c b/source3/smbd/smb2_lock.c index 162748496c2..d1e63015753 100644 --- a/source3/smbd/smb2_lock.c +++ b/source3/smbd/smb2_lock.c @@ -546,8 +546,8 @@ static void smbd_smb2_lock_try(struct tevent_req *req) setup_retry: DBG_DEBUG("Watching share mode lock\n"); - subreq = dbwrap_watched_watch_send( - state, state->ev, lck->data->record, blocking_pid); + subreq = share_mode_watch_send( + state, state->ev, lck->data->id, blocking_pid); TALLOC_FREE(lck); if (tevent_req_nomem(subreq, req)) { return; @@ -585,7 +585,7 @@ static void smbd_smb2_lock_retry(struct tevent_req *subreq) return; } - status = dbwrap_watched_watch_recv(subreq, NULL, NULL); + status = share_mode_watch_recv(subreq, NULL, NULL); TALLOC_FREE(subreq); if (NT_STATUS_EQUAL(status, NT_STATUS_IO_TIMEOUT)) { /* diff --git a/source3/smbd/smb2_setinfo.c b/source3/smbd/smb2_setinfo.c index cfb49fb8d14..b13a08d55af 100644 --- a/source3/smbd/smb2_setinfo.c +++ b/source3/smbd/smb2_setinfo.c @@ -265,10 +265,10 @@ static struct tevent_req *delay_rename_for_lease_break(struct tevent_req *req, talloc_set_destructor(rename_state, defer_rename_state_destructor); - subreq = dbwrap_watched_watch_send( + subreq = share_mode_watch_send( rename_state, ev, - lck->data->record, + lck->data->id, (struct server_id){0}); if (subreq == NULL) { @@ -296,7 +296,7 @@ static void defer_rename_done(struct tevent_req *subreq) int ret_size = 0; bool ok; - status = dbwrap_watched_watch_recv(subreq, NULL, NULL); + status = share_mode_watch_recv(subreq, NULL, NULL); TALLOC_FREE(subreq); if (!NT_STATUS_IS_OK(status)) { DEBUG(5, ("dbwrap_record_watch_recv returned %s\n",