diff options
author | Jeremy Allison <jra@samba.org> | 2013-05-02 12:34:54 -0700 |
---|---|---|
committer | Karolin Seeger <kseeger@samba.org> | 2013-05-08 21:26:14 +0200 |
commit | 0fea4e392a37b884242c26a35990ab6313b121a0 (patch) | |
tree | 3748775259b6578d342506c68d5a8dc7d96c90ab | |
parent | 07704006805108641f2391094432d52f0aa78098 (diff) | |
download | samba-0fea4e392a37b884242c26a35990ab6313b121a0.tar.gz |
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>
(cherry picked from commit a026fc6b699719309a27d4646d06fe1a45b0d158)
-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 29d4f7cdc9f..a0ac2f2bbf3 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); |