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