162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 262306a36Sopenharmony_ci#ifndef ISCSI_TARGET_LOGIN_H 362306a36Sopenharmony_ci#define ISCSI_TARGET_LOGIN_H 462306a36Sopenharmony_ci 562306a36Sopenharmony_ci#include <linux/types.h> 662306a36Sopenharmony_ci 762306a36Sopenharmony_cistruct iscsit_conn; 862306a36Sopenharmony_cistruct iscsi_login; 962306a36Sopenharmony_cistruct iscsi_np; 1062306a36Sopenharmony_cistruct sockaddr_storage; 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ciextern int iscsi_login_setup_crypto(struct iscsit_conn *); 1362306a36Sopenharmony_ciextern int iscsi_check_for_session_reinstatement(struct iscsit_conn *); 1462306a36Sopenharmony_ciextern int iscsi_login_post_auth_non_zero_tsih(struct iscsit_conn *, u16, u32); 1562306a36Sopenharmony_ciextern int iscsit_setup_np(struct iscsi_np *, 1662306a36Sopenharmony_ci struct sockaddr_storage *); 1762306a36Sopenharmony_ciextern int iscsi_target_setup_login_socket(struct iscsi_np *, 1862306a36Sopenharmony_ci struct sockaddr_storage *); 1962306a36Sopenharmony_ciextern int iscsit_accept_np(struct iscsi_np *, struct iscsit_conn *); 2062306a36Sopenharmony_ciextern int iscsit_get_login_rx(struct iscsit_conn *, struct iscsi_login *); 2162306a36Sopenharmony_ciextern int iscsit_put_login_tx(struct iscsit_conn *, struct iscsi_login *, u32); 2262306a36Sopenharmony_ciextern void iscsit_free_conn(struct iscsit_conn *); 2362306a36Sopenharmony_ciextern int iscsit_start_kthreads(struct iscsit_conn *); 2462306a36Sopenharmony_ciextern void iscsi_post_login_handler(struct iscsi_np *, struct iscsit_conn *, u8); 2562306a36Sopenharmony_ciextern void iscsi_target_login_sess_out(struct iscsit_conn *, bool, bool); 2662306a36Sopenharmony_ciextern int iscsi_target_login_thread(void *); 2762306a36Sopenharmony_ciextern void iscsi_handle_login_thread_timeout(struct timer_list *t); 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ci#endif /*** ISCSI_TARGET_LOGIN_H ***/ 30