18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
28c2ecf20Sopenharmony_ci#ifndef ISCSI_TARGET_LOGIN_H
38c2ecf20Sopenharmony_ci#define ISCSI_TARGET_LOGIN_H
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ci#include <linux/types.h>
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_cistruct iscsi_conn;
88c2ecf20Sopenharmony_cistruct iscsi_login;
98c2ecf20Sopenharmony_cistruct iscsi_np;
108c2ecf20Sopenharmony_cistruct sockaddr_storage;
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ciextern int iscsi_login_setup_crypto(struct iscsi_conn *);
138c2ecf20Sopenharmony_ciextern int iscsi_check_for_session_reinstatement(struct iscsi_conn *);
148c2ecf20Sopenharmony_ciextern int iscsi_login_post_auth_non_zero_tsih(struct iscsi_conn *, u16, u32);
158c2ecf20Sopenharmony_ciextern int iscsit_setup_np(struct iscsi_np *,
168c2ecf20Sopenharmony_ci				struct sockaddr_storage *);
178c2ecf20Sopenharmony_ciextern int iscsi_target_setup_login_socket(struct iscsi_np *,
188c2ecf20Sopenharmony_ci				struct sockaddr_storage *);
198c2ecf20Sopenharmony_ciextern int iscsit_accept_np(struct iscsi_np *, struct iscsi_conn *);
208c2ecf20Sopenharmony_ciextern int iscsit_get_login_rx(struct iscsi_conn *, struct iscsi_login *);
218c2ecf20Sopenharmony_ciextern int iscsit_put_login_tx(struct iscsi_conn *, struct iscsi_login *, u32);
228c2ecf20Sopenharmony_ciextern void iscsit_free_conn(struct iscsi_conn *);
238c2ecf20Sopenharmony_ciextern int iscsit_start_kthreads(struct iscsi_conn *);
248c2ecf20Sopenharmony_ciextern void iscsi_post_login_handler(struct iscsi_np *, struct iscsi_conn *, u8);
258c2ecf20Sopenharmony_ciextern void iscsi_target_login_sess_out(struct iscsi_conn *, bool, bool);
268c2ecf20Sopenharmony_ciextern int iscsi_target_login_thread(void *);
278c2ecf20Sopenharmony_ciextern void iscsi_handle_login_thread_timeout(struct timer_list *t);
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ci#endif   /*** ISCSI_TARGET_LOGIN_H ***/
30