Hi Nicholas, On Tue, 17 Jun 2014 15:18:00 -0700, Nicholas A. Bellinger wrote : > Thanks for the detailed bug-report. > > So looking at this, it appears the issue involves the login response PDU > containing the exception status class / detail is not being explicitly > cleared in >= v3.10 code. > > The following patch addresses the issue on my end, and correctly reports > the 'iSCSI login failed due to authorization failure' to the initiator. > > Please confirm on your side. I confirm that your patch fixes the issue. The WHQL iSCSI CHAP test is now OK and wireshark dissects the packet as "Login Response (Authentication failed)". Tested-by: Christophe Vu-Brugier <cvubrugier@xxxxxxxx> Thank you! > --nab > > diff --git a/drivers/target/iscsi/iscsi_target_util.c b/drivers/target/iscsi/iscsi_target_util.c > index 53e157c..fd90b28 100644 > --- a/drivers/target/iscsi/iscsi_target_util.c > +++ b/drivers/target/iscsi/iscsi_target_util.c > @@ -1295,6 +1295,8 @@ int iscsit_tx_login_rsp(struct iscsi_conn *conn, u8 status_class, u8 status_deta > login->login_failed = 1; > iscsit_collect_login_stats(conn, status_class, status_detail); > > + memset(&login->rsp[0], 0, ISCSI_HDR_LEN); > + > hdr = (struct iscsi_login_rsp *)&login->rsp[0]; > hdr->opcode = ISCSI_OP_LOGIN_RSP; > hdr->status_class = status_class; > > -- -- Christophe Vu-Brugier
Attachment:
whql-chap-invalid-resp-hexa-3.15-rc3-with-nab-fix-good.pcap
Description: application/vnd.tcpdump.pcap