xref: /OK3568_Linux_fs/kernel/drivers/target/iscsi/iscsi_target_login.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */
2*4882a593Smuzhiyun #ifndef ISCSI_TARGET_LOGIN_H
3*4882a593Smuzhiyun #define ISCSI_TARGET_LOGIN_H
4*4882a593Smuzhiyun 
5*4882a593Smuzhiyun #include <linux/types.h>
6*4882a593Smuzhiyun 
7*4882a593Smuzhiyun struct iscsi_conn;
8*4882a593Smuzhiyun struct iscsi_login;
9*4882a593Smuzhiyun struct iscsi_np;
10*4882a593Smuzhiyun struct sockaddr_storage;
11*4882a593Smuzhiyun 
12*4882a593Smuzhiyun extern int iscsi_login_setup_crypto(struct iscsi_conn *);
13*4882a593Smuzhiyun extern int iscsi_check_for_session_reinstatement(struct iscsi_conn *);
14*4882a593Smuzhiyun extern int iscsi_login_post_auth_non_zero_tsih(struct iscsi_conn *, u16, u32);
15*4882a593Smuzhiyun extern int iscsit_setup_np(struct iscsi_np *,
16*4882a593Smuzhiyun 				struct sockaddr_storage *);
17*4882a593Smuzhiyun extern int iscsi_target_setup_login_socket(struct iscsi_np *,
18*4882a593Smuzhiyun 				struct sockaddr_storage *);
19*4882a593Smuzhiyun extern int iscsit_accept_np(struct iscsi_np *, struct iscsi_conn *);
20*4882a593Smuzhiyun extern int iscsit_get_login_rx(struct iscsi_conn *, struct iscsi_login *);
21*4882a593Smuzhiyun extern int iscsit_put_login_tx(struct iscsi_conn *, struct iscsi_login *, u32);
22*4882a593Smuzhiyun extern void iscsit_free_conn(struct iscsi_conn *);
23*4882a593Smuzhiyun extern int iscsit_start_kthreads(struct iscsi_conn *);
24*4882a593Smuzhiyun extern void iscsi_post_login_handler(struct iscsi_np *, struct iscsi_conn *, u8);
25*4882a593Smuzhiyun extern void iscsi_target_login_sess_out(struct iscsi_conn *, bool, bool);
26*4882a593Smuzhiyun extern int iscsi_target_login_thread(void *);
27*4882a593Smuzhiyun extern void iscsi_handle_login_thread_timeout(struct timer_list *t);
28*4882a593Smuzhiyun 
29*4882a593Smuzhiyun #endif   /*** ISCSI_TARGET_LOGIN_H ***/
30