s3: Pass sconn explicitly to open_was_deferred
authorVolker Lendecke <vl@samba.org>
Tue, 2 Aug 2011 15:05:33 +0000 (17:05 +0200)
committerVolker Lendecke <vl@samba.org>
Tue, 2 Aug 2011 17:18:08 +0000 (19:18 +0200)
source3/smbd/nttrans.c
source3/smbd/open.c
source3/smbd/process.c
source3/smbd/proto.h
source3/smbd/reply.c
source3/smbd/smb2_create.c
source3/smbd/trans2.c

index 9f745f269e5b3a6266cd454259240070bbaf84ce..8900ec875fd6ec2695225efd363021f5a7b342f4 100644 (file)
@@ -584,7 +584,7 @@ void reply_ntcreate_and_X(struct smb_request *req)
                &info);                                 /* pinfo */
 
        if (!NT_STATUS_IS_OK(status)) {
-               if (open_was_deferred(req->mid)) {
+               if (open_was_deferred(req->sconn, req->mid)) {
                        /* We have re-scheduled this call, no error. */
                        goto out;
                }
@@ -1159,7 +1159,7 @@ static void call_nt_transact_create(connection_struct *conn,
                &info);                                 /* pinfo */
 
        if(!NT_STATUS_IS_OK(status)) {
-               if (open_was_deferred(req->mid)) {
+               if (open_was_deferred(req->sconn, req->mid)) {
                        /* We have re-scheduled this call, no error. */
                        return;
                }
@@ -1642,7 +1642,7 @@ void reply_ntrename(struct smb_request *req)
        }
 
        if (!NT_STATUS_IS_OK(status)) {
-               if (open_was_deferred(req->mid)) {
+               if (open_was_deferred(req->sconn, req->mid)) {
                        /* We have re-scheduled this call. */
                        goto out;
                }
index e5496fdd14d89e1e76694a5faa6bbdafd3da514b..61d1a2e3ccc6346a800e3e75dff3423c2654848a 100644 (file)
@@ -794,7 +794,7 @@ static void validate_my_share_entries(struct smbd_server_connection *sconn,
        }
 
        if (is_deferred_open_entry(share_entry) &&
-           !open_was_deferred(share_entry->op_mid)) {
+           !open_was_deferred(sconn, share_entry->op_mid)) {
                char *str = talloc_asprintf(talloc_tos(),
                        "Got a deferred entry without a request: "
                        "PANIC: %s\n",
index bb0b85a20e7f0c580a1f4f30889da67f84da83b6..0160c35621c14f6bc7cbc7992b371f49b1ae4797 100644 (file)
@@ -743,12 +743,12 @@ void schedule_deferred_open_message_smb(struct smbd_server_connection *sconn,
  Return true if this mid is on the deferred queue and was not yet processed.
 ****************************************************************************/
 
-bool open_was_deferred(uint64_t mid)
+bool open_was_deferred(struct smbd_server_connection *sconn, uint64_t mid)
 {
        struct pending_message_list *pml;
 
-       if (smbd_server_conn->using_smb2) {
-               return open_was_deferred_smb2(smbd_server_conn, mid);
+       if (sconn->using_smb2) {
+               return open_was_deferred_smb2(sconn, mid);
        }
 
        for (pml = deferred_open_queue; pml; pml = pml->next) {
index 5eced3df9b2fc6f478a3efb355ed9370542f6d70..49fc8c7b2092b18a7d39e5b83b90882bac3310b7 100644 (file)
@@ -775,7 +775,7 @@ void remove_deferred_open_message_smb(struct smbd_server_connection *sconn,
                                      uint64_t mid);
 void schedule_deferred_open_message_smb(struct smbd_server_connection *sconn,
                                        uint64_t mid);
-bool open_was_deferred(uint64_t mid);
+bool open_was_deferred(struct smbd_server_connection *sconn, uint64_t mid);
 bool get_deferred_open_message_state(struct smb_request *smbreq,
                                struct timeval *p_request_time,
                                void **pp_state);
index 59ec8f212e5f948bc0feff817731d426cd7da44f..2bc80f473886841c9c68e7755a614777b0ac9c6b 100644 (file)
@@ -1816,7 +1816,7 @@ void reply_open(struct smb_request *req)
                &info);                                 /* pinfo */
 
        if (!NT_STATUS_IS_OK(status)) {
-               if (open_was_deferred(req->mid)) {
+               if (open_was_deferred(req->sconn, req->mid)) {
                        /* We have re-scheduled this call. */
                        goto out;
                }
@@ -1993,7 +1993,7 @@ void reply_open_and_X(struct smb_request *req)
                &smb_action);                           /* pinfo */
 
        if (!NT_STATUS_IS_OK(status)) {
-               if (open_was_deferred(req->mid)) {
+               if (open_was_deferred(req->sconn, req->mid)) {
                        /* We have re-scheduled this call. */
                        goto out;
                }
@@ -2215,7 +2215,7 @@ void reply_mknew(struct smb_request *req)
                NULL);                                  /* pinfo */
 
        if (!NT_STATUS_IS_OK(status)) {
-               if (open_was_deferred(req->mid)) {
+               if (open_was_deferred(req->sconn, req->mid)) {
                        /* We have re-scheduled this call. */
                        goto out;
                }
@@ -2347,7 +2347,7 @@ void reply_ctemp(struct smb_request *req)
        close(tmpfd);
 
        if (!NT_STATUS_IS_OK(status)) {
-               if (open_was_deferred(req->mid)) {
+               if (open_was_deferred(req->sconn, req->mid)) {
                        /* We have re-scheduled this call. */
                        goto out;
                }
@@ -2822,7 +2822,7 @@ void reply_unlink(struct smb_request *req)
        status = unlink_internals(conn, req, dirtype, smb_fname,
                                  path_contains_wcard);
        if (!NT_STATUS_IS_OK(status)) {
-               if (open_was_deferred(req->mid)) {
+               if (open_was_deferred(req->sconn, req->mid)) {
                        /* We have re-scheduled this call. */
                        goto out;
                }
@@ -5663,7 +5663,7 @@ void reply_rmdir(struct smb_request *req)
                &info);                                 /* pinfo */
 
        if (!NT_STATUS_IS_OK(status)) {
-               if (open_was_deferred(req->mid)) {
+               if (open_was_deferred(req->sconn, req->mid)) {
                        /* We have re-scheduled this call. */
                        goto out;
                }
@@ -6678,7 +6678,7 @@ void reply_mv(struct smb_request *req)
                                  attrs, False, src_has_wcard, dest_has_wcard,
                                  DELETE_ACCESS);
        if (!NT_STATUS_IS_OK(status)) {
-               if (open_was_deferred(req->mid)) {
+               if (open_was_deferred(req->sconn, req->mid)) {
                        /* We have re-scheduled this call. */
                        goto out;
                }
index 7c6b4bc46ce2c219377e6f7755b7ce97505b611f..aaa461c50305f4f765e33eefc1820d5288385af3 100644 (file)
@@ -719,7 +719,7 @@ static struct tevent_req *smbd_smb2_create_send(TALLOC_CTX *mem_ctx,
                                             &result,
                                             &info);
                if (!NT_STATUS_IS_OK(status)) {
-                       if (open_was_deferred(smb1req->mid)) {
+                       if (open_was_deferred(smb1req->sconn, smb1req->mid)) {
                                return req;
                        }
                        tevent_req_nterror(req, status);
index 859d2adef400952333edea3fea35c171fbd850ce..881dced3103ce4bb23161e1ab7c359980840d2b4 100644 (file)
@@ -1138,7 +1138,7 @@ static void call_trans2open(connection_struct *conn,
                &smb_action);                           /* psbuf */
 
        if (!NT_STATUS_IS_OK(status)) {
-               if (open_was_deferred(req->mid)) {
+               if (open_was_deferred(req->sconn, req->mid)) {
                        /* We have re-scheduled this call. */
                        goto out;
                }
@@ -8048,7 +8048,7 @@ static void call_trans2setfilepathinfo(connection_struct *conn,
                                         ppdata, total_data,
                                         &data_return_size);
        if (!NT_STATUS_IS_OK(status)) {
-               if (open_was_deferred(req->mid)) {
+               if (open_was_deferred(req->sconn, req->mid)) {
                        /* We have re-scheduled this call. */
                        return;
                }