linux-stable/drivers/target/iscsi
Nicholas Bellinger 4454b66cb6 iscsi-target: Fix-up all zero data-length CDBs with R/W_BIT set
This patch changes special case handling for ISCSI_OP_SCSI_CMD
where an initiator sends a zero length Expected Data Transfer
Length (EDTL), but still sets the WRITE and/or READ flag bits
when no payload transfer is requested.

Many, many moons ago two special cases where added for an ancient
version of ESX that has long since been fixed, so instead of adding
a new special case for the reported bug with a Broadcom 57800 NIC,
go ahead and always strip off the incorrect WRITE + READ flag bits.

Also, avoid sending a reject here, as RFC-3720 does mandate this
case be handled without protocol error.

Reported-by: Witold Bazakbal <865perl@wp.pl>
Tested-by: Witold Bazakbal <865perl@wp.pl>
Cc: <stable@vger.kernel.org> #3.1+
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
2013-12-11 10:59:57 -08:00
..
iscsi_target.c iscsi-target: Fix-up all zero data-length CDBs with R/W_BIT set 2013-12-11 10:59:57 -08:00
iscsi_target.h iscsi/iser-target: Convert to command priv_size usage 2013-09-09 14:29:21 -07:00
iscsi_target_auth.c iscsi-target: chap auth shouldn't match username with trailing garbage 2013-11-20 22:03:57 -08:00
iscsi_target_auth.h
iscsi_target_configfs.c iscsi-target: return -EINVAL on oversized configfs parameter 2013-12-11 10:59:33 -08:00
iscsi_target_configfs.h
iscsi_target_core.h iscsi-target: Expose default_erl as TPG attribute 2013-11-20 11:57:18 -08:00
iscsi_target_datain_values.c target: Update copyright ownership/year information to 2013 2013-09-10 20:23:36 -07:00
iscsi_target_datain_values.h
iscsi_target_device.c iscsi-target: Fix mutex_trylock usage in iscsit_increment_maxcmdsn 2013-11-12 17:54:56 -08:00
iscsi_target_device.h target/iscsi: Remove unneeded wrapper functions 2012-02-25 14:37:47 -08:00
iscsi_target_erl0.c iscsi-target: Convert iscsi_session statistics to atomic_long_t 2013-11-19 21:38:52 -08:00
iscsi_target_erl0.h
iscsi_target_erl1.c target: Update copyright ownership/year information to 2013 2013-09-10 20:23:36 -07:00
iscsi_target_erl1.h iscsit: use the itt_t abstract type 2012-10-03 14:21:50 -07:00
iscsi_target_erl2.c target: Update copyright ownership/year information to 2013 2013-09-10 20:23:36 -07:00
iscsi_target_erl2.h iscsit: proper endianess conversions 2012-10-03 14:39:22 -07:00
iscsi_target_login.c iscsi-target: Convert iscsi_session statistics to atomic_long_t 2013-11-19 21:38:52 -08:00
iscsi_target_login.h iscsi-target: Prepare login code for multi-plexing support 2013-09-09 13:34:09 -07:00
iscsi_target_nego.c Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending 2013-11-22 10:52:03 -08:00
iscsi_target_nego.h iscsi-target: Initial traditional TCP conversion to iscsit_transport 2013-04-25 01:05:26 -07:00
iscsi_target_nodeattrib.c iscsi-target: Expose default_erl as TPG attribute 2013-11-20 11:57:18 -08:00
iscsi_target_nodeattrib.h iscsi-target: Expose default_erl as TPG attribute 2013-11-20 11:57:18 -08:00
iscsi_target_parameters.c target: Update copyright ownership/year information to 2013 2013-09-10 20:23:36 -07:00
iscsi_target_parameters.h iscsi-target: fix heap buffer overflow on error 2013-05-30 18:07:54 -07:00
iscsi_target_seq_pdu_list.c target: Update copyright ownership/year information to 2013 2013-09-10 20:23:36 -07:00
iscsi_target_seq_pdu_list.h target/iscsi: Fold _decide_list_to_build into _build_pdu_and_seq_lists 2012-04-14 17:40:38 -07:00
iscsi_target_stat.c iscsi-target: Convert iscsi_session statistics to atomic_long_t 2013-11-19 21:38:52 -08:00
iscsi_target_stat.h
iscsi_target_tmr.c target: Update copyright ownership/year information to 2013 2013-09-10 20:23:36 -07:00
iscsi_target_tmr.h
iscsi_target_tpg.c iscsi-target: Expose default_erl as TPG attribute 2013-11-20 11:57:18 -08:00
iscsi_target_tpg.h iscsi-target: Expose default_erl as TPG attribute 2013-11-20 11:57:18 -08:00
iscsi_target_tq.c target: Update copyright ownership/year information to 2013 2013-09-10 20:23:36 -07:00
iscsi_target_tq.h iscsi-target: Add thread_set->ts_activate_sem + use common deallocate 2013-09-10 20:23:05 -07:00
iscsi_target_transport.c iscsi-target: Add iscsit_transport API template 2013-04-25 01:05:26 -07:00
iscsi_target_util.c Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending 2013-11-22 10:52:03 -08:00
iscsi_target_util.h iscsi-target: Fix iscsit_sequence_cmd reject handling for iser 2013-07-06 21:59:54 -07:00
Kconfig target: iscsi_target depends on NET 2011-07-28 20:16:18 +00:00
Makefile iscsi-target: Add iscsit_transport API template 2013-04-25 01:05:26 -07:00