• Nicholas Bellinger's avatar
    iscsi-target: Fix-up all zero data-length CDBs with R/W_BIT set · 4454b66c
    Nicholas Bellinger authored
    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: default avatarWitold Bazakbal <865perl@wp.pl>
    Tested-by: default avatarWitold Bazakbal <865perl@wp.pl>
    Cc: <stable@vger.kernel.org> #3.1+
    Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
    4454b66c
iscsi_target.c 126 KB