summaryrefslogtreecommitdiff
path: root/sys/dev/iscsi
diff options
context:
space:
mode:
authormlelstv <mlelstv@NetBSD.org>2018-03-04 07:37:43 +0000
committermlelstv <mlelstv@NetBSD.org>2018-03-04 07:37:43 +0000
commitd63ebed8a89f066c7bba94f2e01e29c19283ee10 (patch)
treed01ec8bcbceb37583ef3570f8be853f19de5fc53 /sys/dev/iscsi
parentff0d01a2410d6c5580439b27e1e3ca04449506b8 (diff)
Add sanity check.
Diffstat (limited to 'sys/dev/iscsi')
-rw-r--r--sys/dev/iscsi/iscsi_rcv.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/dev/iscsi/iscsi_rcv.c b/sys/dev/iscsi/iscsi_rcv.c
index 6bcd0e53cee..5b21b0feadc 100644
--- a/sys/dev/iscsi/iscsi_rcv.c
+++ b/sys/dev/iscsi/iscsi_rcv.c
@@ -1,4 +1,4 @@
-/* $NetBSD: iscsi_rcv.c,v 1.24 2017/12/03 19:07:10 christos Exp $ */
+/* $NetBSD: iscsi_rcv.c,v 1.25 2018/03/04 07:37:43 mlelstv Exp $ */
/*-
* Copyright (c) 2004,2005,2006,2011 The NetBSD Foundation, Inc.
@@ -737,6 +737,11 @@ receive_command_response_pdu(connection_t *conn, pdu_t *pdu, ccb_t *req_ccb)
return -1;
}
+ if (req_ccb->ccb_flags & CCBF_COMPLETE) {
+ DEBOUT(("Possibly duplicate command response (tagged as COMPLETE)\n"));
+ return -1;
+ }
+
if (req_ccb->ccb_pdu_waiting != NULL) {
ccb_timeout_start(req_ccb, COMMAND_TIMEOUT);
req_ccb->ccb_num_timeouts = 0;