Lines Matching refs:conn

160 kernel_modify(const struct iscsid_connection *conn, const char *target_address)  in kernel_modify()  argument
166 ism.ism_session_id = conn->conn_session_id; in kernel_modify()
167 memcpy(&ism.ism_conf, &conn->conn_conf, sizeof(ism.ism_conf)); in kernel_modify()
170 error = ioctl(conn->conn_iscsi_fd, ISCSISMODIFY, &ism); in kernel_modify()
188 login_handle_redirection(struct iscsid_connection *conn, struct pdu *response) in login_handle_redirection() argument
206 sizeof(conn->conn_conf.isc_target_addr) - 1) in login_handle_redirection()
210 kernel_modify(conn, target_address); in login_handle_redirection()
215 login_receive(struct connection *conn) in login_receive() argument
222 response = pdu_new(conn); in login_receive()
241 login_handle_redirection((struct iscsid_connection *)conn, in login_receive()
249 fail(conn, errorstr); in login_receive()
253 ntohl(bhslr->bhslr_statsn) != conn->conn_statsn + 1) { in login_receive()
260 conn->conn_statsn + 1); in login_receive()
262 conn->conn_tsih = ntohs(bhslr->bhslr_tsih); in login_receive()
263 conn->conn_statsn = ntohl(bhslr->bhslr_statsn); in login_receive()
271 login_new_request(struct connection *conn, int csg) in login_new_request() argument
277 request = pdu_new(conn); in login_new_request()
297 memcpy(bhslr->bhslr_isid, &conn->conn_isid, sizeof(bhslr->bhslr_isid)); in login_new_request()
298 bhslr->bhslr_tsih = htons(conn->conn_tsih); in login_new_request()
301 bhslr->bhslr_expstatsn = htonl(conn->conn_statsn + 1); in login_new_request()
329 login_negotiate_key(struct iscsid_connection *conn, const char *name, in login_negotiate_key() argument
335 isl = &conn->conn_limits; in login_negotiate_key()
337 strlcpy(conn->conn_target_alias, value, in login_negotiate_key()
338 sizeof(conn->conn_target_alias)); in login_negotiate_key()
345 conn->conn_protocol_level = tmp; in login_negotiate_key()
352 conn->conn.conn_header_digest = CONN_DIGEST_CRC32C; in login_negotiate_key()
369 conn->conn.conn_data_digest = CONN_DIGEST_CRC32C; in login_negotiate_key()
384 conn->conn_initial_r2t = true; in login_negotiate_key()
386 conn->conn_initial_r2t = false; in login_negotiate_key()
389 conn->conn.conn_immediate_data = true; in login_negotiate_key()
391 conn->conn.conn_immediate_data = false; in login_negotiate_key()
403 conn->conn.conn_max_send_data_segment_length = tmp; in login_negotiate_key()
413 conn->conn.conn_max_burst_length = tmp; in login_negotiate_key()
423 conn->conn.conn_first_burst_length = tmp; in login_negotiate_key()
441 if (conn->conn_conf.isc_iser == 1 && in login_negotiate_key()
456 conn->conn.conn_max_recv_data_segment_length = tmp; in login_negotiate_key()
471 conn->conn.conn_max_send_data_segment_length = tmp; in login_negotiate_key()
478 login_negotiate(struct iscsid_connection *conn) in login_negotiate() argument
487 request = login_new_request(&conn->conn, in login_negotiate()
491 isl = &conn->conn_limits; in login_negotiate()
495 conn->conn_conf.isc_offload, isl->isl_max_recv_data_segment_length, in login_negotiate()
502 if (conn->conn_conf.isc_discovery == 0) { in login_negotiate()
504 if (conn->conn_conf.isc_header_digest != 0) in login_negotiate()
508 if (conn->conn_conf.isc_data_digest != 0) in login_negotiate()
520 if (conn->conn_conf.isc_iser == 1) { in login_negotiate()
537 conn->conn.conn_max_recv_data_segment_length = in login_negotiate()
550 response = login_receive(&conn->conn); in login_negotiate()
557 login_negotiate_key(conn, in login_negotiate()
581 request = login_new_request(&conn->conn, in login_negotiate()
586 response = login_receive(&conn->conn); in login_negotiate()
599 login_send_chap_a(struct connection *conn) in login_send_chap_a() argument
604 request = login_new_request(conn, BHSLR_STAGE_SECURITY_NEGOTIATION); in login_send_chap_a()
616 struct iscsid_connection *conn; in login_send_chap_r() local
633 conn = (struct iscsid_connection *)response->pdu_connection; in login_send_chap_r()
656 rchap = rchap_new(conn->conn_conf.isc_secret); in login_send_chap_r()
667 request = login_new_request(&conn->conn, in login_send_chap_r()
670 keys_add(request_keys, "CHAP_N", conn->conn_conf.isc_user); in login_send_chap_r()
678 if (conn->conn_conf.isc_mutual_user[0] != '\0') { in login_send_chap_r()
681 sizeof(conn->conn_mutual_chap->chap_challenge)); in login_send_chap_r()
683 assert(conn->conn_mutual_chap == NULL); in login_send_chap_r()
684 conn->conn_mutual_chap = chap_new(); in login_send_chap_r()
685 mutual_chap_i = chap_get_id(conn->conn_mutual_chap); in login_send_chap_r()
686 mutual_chap_c = chap_get_challenge(conn->conn_mutual_chap); in login_send_chap_r()
702 struct iscsid_connection *conn; in login_verify_mutual() local
707 conn = (struct iscsid_connection *)response->pdu_connection; in login_verify_mutual()
719 error = chap_receive(conn->conn_mutual_chap, chap_r); in login_verify_mutual()
723 if (strcmp(chap_n, conn->conn_conf.isc_mutual_user) != 0) { in login_verify_mutual()
724 fail(&conn->conn, "Mutual CHAP failed"); in login_verify_mutual()
728 error = chap_authenticate(conn->conn_mutual_chap, in login_verify_mutual()
729 conn->conn_conf.isc_mutual_secret); in login_verify_mutual()
731 fail(&conn->conn, "Mutual CHAP failed"); in login_verify_mutual()
736 chap_delete(conn->conn_mutual_chap); in login_verify_mutual()
737 conn->conn_mutual_chap = NULL; in login_verify_mutual()
743 login_chap(struct iscsid_connection *conn) in login_chap() argument
748 login_send_chap_a(&conn->conn); in login_chap()
751 response = login_receive(&conn->conn); in login_chap()
762 response = login_receive(&conn->conn); in login_chap()
763 if (conn->conn_conf.isc_mutual_user[0] != '\0') in login_chap()
771 login(struct iscsid_connection *conn) in login() argument
780 request = login_new_request(&conn->conn, in login()
783 if (conn->conn_conf.isc_mutual_user[0] != '\0') { in login()
785 } else if (conn->conn_conf.isc_user[0] != '\0') { in login()
804 conn->conn_conf.isc_initiator); in login()
805 if (conn->conn_conf.isc_initiator_alias[0] != '\0') { in login()
807 conn->conn_conf.isc_initiator_alias); in login()
809 if (conn->conn_conf.isc_discovery == 0) { in login()
812 "TargetName", conn->conn_conf.isc_target); in login()
821 response = login_receive(&conn->conn); in login()
841 login_negotiate_key(conn, in login()
848 if (conn->conn_conf.isc_mutual_user[0] != '\0') { in login()
858 login_negotiate(conn); in login()
866 if (conn->conn_conf.isc_mutual_user[0] != '\0') { in login()
874 login_negotiate(conn); in login()
879 fail(&conn->conn, "Unsupported AuthMethod"); in login()
884 if (conn->conn_conf.isc_user[0] == '\0' || in login()
885 conn->conn_conf.isc_secret[0] == '\0') { in login()
886 fail(&conn->conn, "Authentication required"); in login()
896 login_chap(conn); in login()
897 login_negotiate(conn); in login()