diff options
author | Jeremy Allison <jra@samba.org> | 2013-05-02 12:34:54 -0700 |
---|---|---|
committer | Richard Sharpe <sharpe@samba.org> | 2013-05-07 17:58:45 +0200 |
commit | a026fc6b699719309a27d4646d06fe1a45b0d158 (patch) | |
tree | 5540ae38f602cba78030c4a01797ae4f8ff1a7ef /source3/smbd | |
parent | 4111fcfd4f570d39d46a0d414546ca62c7b609be (diff) | |
download | samba-a026fc6b699719309a27d4646d06fe1a45b0d158.tar.gz samba-a026fc6b699719309a27d4646d06fe1a45b0d158.tar.bz2 samba-a026fc6b699719309a27d4646d06fe1a45b0d158.zip |
Ensure we don't try and cancel anything that is in a compound-related request.
Too hard to deal with splitting off the replies.
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Richard Sharpe <realrichardsharpe@gmail.com>
Diffstat (limited to 'source3/smbd')
-rw-r--r-- | source3/smbd/smb2_server.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/source3/smbd/smb2_server.c b/source3/smbd/smb2_server.c index 57e9c7bfa8..9a55d6af2c 100644 --- a/source3/smbd/smb2_server.c +++ b/source3/smbd/smb2_server.c @@ -1599,6 +1599,14 @@ static NTSTATUS smbd_smb2_request_process_cancel(struct smbd_smb2_request *req) uint64_t message_id; uint64_t async_id; + if (cur->compound_related) { + /* + * Never cancel anything in a compound request. + * Way too hard to deal with the result. + */ + continue; + } + outhdr = SMBD_SMB2_OUT_HDR_PTR(cur); message_id = BVAL(outhdr, SMB2_HDR_MESSAGE_ID); |