summaryrefslogtreecommitdiff
path: root/source3/smbd
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2013-05-02 14:16:22 -0700
committerRichard Sharpe <sharpe@samba.org>2013-05-07 17:58:45 +0200
commitcbff4885508e050bcb91c0faccb26941de5c1e1d (patch)
tree72af412ba3a3835dfe99e521cafac6f4b3519c37 /source3/smbd
parent10cbcfd167a4d7b1a22f9b42b684a66e424cbede (diff)
downloadsamba-cbff4885508e050bcb91c0faccb26941de5c1e1d.tar.gz
samba-cbff4885508e050bcb91c0faccb26941de5c1e1d.tar.bz2
samba-cbff4885508e050bcb91c0faccb26941de5c1e1d.zip
Remove the compound_related_in_progress state from the smb2 global state.
And also remove the restriction that we can't read a new request whilst we're in this state. Signed-off-by: Jeremy Allison <jra@samba.org> Reviewed-by: Richard Sharpe <realrichardsharpe@samba.org>
Diffstat (limited to 'source3/smbd')
-rw-r--r--source3/smbd/globals.h1
-rw-r--r--source3/smbd/smb2_server.c11
2 files changed, 0 insertions, 12 deletions
diff --git a/source3/smbd/globals.h b/source3/smbd/globals.h
index 46baeed204..d618aeaff3 100644
--- a/source3/smbd/globals.h
+++ b/source3/smbd/globals.h
@@ -794,7 +794,6 @@ struct smbd_server_connection {
uint32_t max_trans;
uint32_t max_read;
uint32_t max_write;
- bool compound_related_in_progress;
} smb2;
struct smbXsrv_connection *conn;
diff --git a/source3/smbd/smb2_server.c b/source3/smbd/smb2_server.c
index 8f804a6a2e..b031c6d153 100644
--- a/source3/smbd/smb2_server.c
+++ b/source3/smbd/smb2_server.c
@@ -1366,7 +1366,6 @@ NTSTATUS smbd_smb2_request_pending_queue(struct smbd_smb2_request *req,
* This is no longer a compound request.
*/
req->compound_related = false;
- req->sconn->smb2.compound_related_in_progress = false;
outhdr = SMBD_SMB2_OUT_HDR_PTR(req);
flags = (IVAL(outhdr, SMB2_HDR_FLAGS) & ~SMB2_HDR_FLAG_CHAINED);
SIVAL(outhdr, SMB2_HDR_FLAGS, flags);
@@ -2042,7 +2041,6 @@ NTSTATUS smbd_smb2_request_dispatch(struct smbd_smb2_request *req)
if (flags & SMB2_HDR_FLAG_CHAINED) {
req->compound_related = true;
- req->sconn->smb2.compound_related_in_progress = true;
}
if (call->need_session) {
@@ -2406,7 +2404,6 @@ static NTSTATUS smbd_smb2_request_reply(struct smbd_smb2_request *req)
if (req->compound_related) {
req->compound_related = false;
- req->sconn->smb2.compound_related_in_progress = false;
}
smb2_setup_nbt_length(req->out.vector, req->out.vector_count);
@@ -3161,14 +3158,6 @@ static NTSTATUS smbd_smb2_request_next_incoming(struct smbd_server_connection *s
size_t cur_send_queue_len;
struct tevent_req *subreq;
- if (sconn->smb2.compound_related_in_progress) {
- /*
- * Can't read another until the related
- * compound is done.
- */
- return NT_STATUS_OK;
- }
-
if (tevent_queue_length(sconn->smb2.recv_queue) > 0) {
/*
* if there is already a smbd_smb2_request_read