aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/target/iscsi
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/target/iscsi')
-rw-r--r--drivers/target/iscsi/iscsi_target_login.c8
-rw-r--r--drivers/target/iscsi/iscsi_target_nego.c10
2 files changed, 12 insertions, 6 deletions
diff --git a/drivers/target/iscsi/iscsi_target_login.c b/drivers/target/iscsi/iscsi_target_login.c
index 3f34ecf87b1e..7bf9ccccb588 100644
--- a/drivers/target/iscsi/iscsi_target_login.c
+++ b/drivers/target/iscsi/iscsi_target_login.c
@@ -127,13 +127,13 @@ int iscsi_check_for_session_reinstatement(struct iscsi_conn *conn)
127 127
128 initiatorname_param = iscsi_find_param_from_key( 128 initiatorname_param = iscsi_find_param_from_key(
129 INITIATORNAME, conn->param_list); 129 INITIATORNAME, conn->param_list);
130 if (!initiatorname_param)
131 return -1;
132
133 sessiontype_param = iscsi_find_param_from_key( 130 sessiontype_param = iscsi_find_param_from_key(
134 SESSIONTYPE, conn->param_list); 131 SESSIONTYPE, conn->param_list);
135 if (!sessiontype_param) 132 if (!initiatorname_param || !sessiontype_param) {
133 iscsit_tx_login_rsp(conn, ISCSI_STATUS_CLS_INITIATOR_ERR,
134 ISCSI_LOGIN_STATUS_MISSING_FIELDS);
136 return -1; 135 return -1;
136 }
137 137
138 sessiontype = (strncmp(sessiontype_param->value, NORMAL, 6)) ? 1 : 0; 138 sessiontype = (strncmp(sessiontype_param->value, NORMAL, 6)) ? 1 : 0;
139 139
diff --git a/drivers/target/iscsi/iscsi_target_nego.c b/drivers/target/iscsi/iscsi_target_nego.c
index e9053a04f24c..9d902aefe01a 100644
--- a/drivers/target/iscsi/iscsi_target_nego.c
+++ b/drivers/target/iscsi/iscsi_target_nego.c
@@ -620,8 +620,11 @@ static int iscsi_target_handle_csg_one(struct iscsi_conn *conn, struct iscsi_log
620 login->req_buf, 620 login->req_buf,
621 payload_length, 621 payload_length,
622 conn); 622 conn);
623 if (ret < 0) 623 if (ret < 0) {
624 iscsit_tx_login_rsp(conn, ISCSI_STATUS_CLS_INITIATOR_ERR,
625 ISCSI_LOGIN_STATUS_INIT_ERR);
624 return -1; 626 return -1;
627 }
625 628
626 if (login->first_request) 629 if (login->first_request)
627 if (iscsi_target_check_first_request(conn, login) < 0) 630 if (iscsi_target_check_first_request(conn, login) < 0)
@@ -636,8 +639,11 @@ static int iscsi_target_handle_csg_one(struct iscsi_conn *conn, struct iscsi_log
636 login->rsp_buf, 639 login->rsp_buf,
637 &login->rsp_length, 640 &login->rsp_length,
638 conn->param_list); 641 conn->param_list);
639 if (ret < 0) 642 if (ret < 0) {
643 iscsit_tx_login_rsp(conn, ISCSI_STATUS_CLS_INITIATOR_ERR,
644 ISCSI_LOGIN_STATUS_INIT_ERR);
640 return -1; 645 return -1;
646 }
641 647
642 if (!login->auth_complete && 648 if (!login->auth_complete &&
643 ISCSI_TPG_ATTRIB(ISCSI_TPG_C(conn))->authentication) { 649 ISCSI_TPG_ATTRIB(ISCSI_TPG_C(conn))->authentication) {