summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/libcli/smb2/transport.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/source4/libcli/smb2/transport.c b/source4/libcli/smb2/transport.c
index a1653e3974..c17bbfde46 100644
--- a/source4/libcli/smb2/transport.c
+++ b/source4/libcli/smb2/transport.c
@@ -277,6 +277,16 @@ static NTSTATUS smb2_transport_finish_recv(void *private_data, DATA_BLOB blob)
return smb2_handle_oplock_break(transport, &blob);
}
+ if (opcode == SMB2_OP_CANCEL) {
+ /*
+ * ignore responses to cancel requests,
+ * this can happen if signing was wrong or
+ * we specified the wrong session id
+ */
+ talloc_free(buffer);
+ return NT_STATUS_OK;
+ }
+
/* match the incoming request against the list of pending requests */
for (req=transport->pending_recv; req; req=req->next) {
if (req->seqnum == seqnum) break;