#ifndef ISCSI_TARGET_CORE_H
#define ISCSI_TARGET_CORE_H
#include <linux/dma-direction.h>
#include <linux/list.h>
#include <linux/sched.h>
#include <linux/socket.h>
#include <linux/types.h>
#include <scsi/iscsi_proto.h>
#include <target/target_core_base.h>
struct sock;
#define ISCSIT_VERSION …
#define ISCSI_MAX_DATASN_MISSING_COUNT …
#define ISCSI_TX_THREAD_TCP_TIMEOUT …
#define ISCSI_RX_THREAD_TCP_TIMEOUT …
#define SECONDS_FOR_ASYNC_LOGOUT …
#define SECONDS_FOR_ASYNC_TEXT …
#define SECONDS_FOR_LOGOUT_COMP …
#define WHITE_SPACE …
#define ISCSIT_MIN_TAGS …
#define ISCSIT_EXTRA_TAGS …
#define ISCSIT_TCP_BACKLOG …
#define ISCSI_RX_THREAD_NAME …
#define ISCSI_TX_THREAD_NAME …
#define ISCSI_IQN_LEN …
#define NA_AUTHENTICATION_INHERITED …
#define NA_DATAOUT_TIMEOUT …
#define NA_DATAOUT_TIMEOUT_MAX …
#define NA_DATAOUT_TIMEOUT_MIX …
#define NA_DATAOUT_TIMEOUT_RETRIES …
#define NA_DATAOUT_TIMEOUT_RETRIES_MAX …
#define NA_DATAOUT_TIMEOUT_RETRIES_MIN …
#define NA_NOPIN_TIMEOUT …
#define NA_NOPIN_TIMEOUT_MAX …
#define NA_NOPIN_TIMEOUT_MIN …
#define NA_NOPIN_RESPONSE_TIMEOUT …
#define NA_NOPIN_RESPONSE_TIMEOUT_MAX …
#define NA_NOPIN_RESPONSE_TIMEOUT_MIN …
#define NA_RANDOM_DATAIN_PDU_OFFSETS …
#define NA_RANDOM_DATAIN_SEQ_OFFSETS …
#define NA_RANDOM_R2T_OFFSETS …
#define TA_AUTHENTICATION …
#define TA_LOGIN_TIMEOUT …
#define TA_LOGIN_TIMEOUT_MAX …
#define TA_LOGIN_TIMEOUT_MIN …
#define TA_GENERATE_NODE_ACLS …
#define TA_DEFAULT_CMDSN_DEPTH …
#define TA_DEFAULT_CMDSN_DEPTH_MAX …
#define TA_DEFAULT_CMDSN_DEPTH_MIN …
#define TA_CACHE_DYNAMIC_ACLS …
#define TA_DEMO_MODE_WRITE_PROTECT …
#define TA_PROD_MODE_WRITE_PROTECT …
#define TA_DEMO_MODE_DISCOVERY …
#define TA_DEFAULT_ERL …
#define TA_CACHE_CORE_NPS …
#define TA_DEFAULT_T10_PI …
#define TA_DEFAULT_FABRIC_PROT_TYPE …
#define TA_DEFAULT_TPG_ENABLED_SENDTARGETS …
#define TA_DEFAULT_LOGIN_KEYS_WORKAROUND …
#define ISCSI_IOV_DATA_BUFFER …
enum iscsit_transport_type { … };
enum target_conn_state_table { … };
enum target_sess_state_table { … };
enum data_count_type { … };
enum datain_req_comp_table { … };
enum datain_req_rec_table { … };
enum tpg_state_table { … };
enum tiqn_state_table { … };
enum cmd_flags_table { … };
enum cmd_i_state_table { … };
enum recover_cmdsn_ret_table { … };
enum immedate_data_ret_table { … };
enum dataout_action_ret_table { … };
enum naf_flags_table { … };
enum iscsi_timer_flags_table { … };
enum np_flags_table { … };
enum np_thread_state_table { … };
struct iscsi_conn_ops { … };
struct iscsi_sess_ops { … };
struct iscsi_queue_req { … };
struct iscsi_param_list { … };
struct iscsi_datain_req { … } ____cacheline_aligned;
struct iscsi_ooo_cmdsn { … } ____cacheline_aligned;
struct iscsi_datain { … } ____cacheline_aligned;
struct iscsi_r2t { … } ____cacheline_aligned;
struct iscsit_cmd { … } ____cacheline_aligned;
struct iscsi_tmr_req { … };
struct iscsit_conn { … } ____cacheline_aligned;
struct iscsi_conn_recovery { … } ____cacheline_aligned;
struct iscsit_session { … } ____cacheline_aligned;
struct iscsi_login { … } ____cacheline_aligned;
struct iscsi_node_attrib { … };
struct se_dev_entry_s;
struct iscsi_node_auth { … };
#include "iscsi_target_stat.h"
struct iscsi_node_stat_grps { … };
struct iscsi_node_acl { … };
static inline struct iscsi_node_acl *
to_iscsi_nacl(struct se_node_acl *se_nacl)
{ … }
struct iscsi_tpg_attrib { … };
struct iscsi_np { … } ____cacheline_aligned;
struct iscsi_tpg_np { … };
struct iscsi_portal_group { … } ____cacheline_aligned;
static inline struct iscsi_portal_group *
to_iscsi_tpg(struct se_portal_group *se_tpg)
{ … }
struct iscsi_wwn_stat_grps { … };
struct iscsi_tiqn { … } ____cacheline_aligned;
struct iscsit_global { … };
static inline u32 session_get_next_ttt(struct iscsit_session *session)
{ … }
extern struct iscsit_cmd *iscsit_find_cmd_from_itt(struct iscsit_conn *, itt_t);
extern void iscsit_thread_check_cpumask(struct iscsit_conn *conn,
struct task_struct *p,
int mode);
#endif