#ifndef ISCSI_PROTO_H
#define ISCSI_PROTO_H
#include <linux/types.h>
#include <scsi/scsi.h>
#define ISCSI_DRAFT20_VERSION …
#define ISCSI_LISTEN_PORT …
#define ISCSI_HDR_LEN …
#define ISCSI_CRC_LEN …
#define ISCSI_PAD_LEN …
static inline int iscsi_sna_lt(u32 n1, u32 n2)
{ … }
static inline int iscsi_sna_lte(u32 n1, u32 n2)
{ … }
static inline int iscsi_sna_gt(u32 n1, u32 n2)
{ … }
static inline int iscsi_sna_gte(u32 n1, u32 n2)
{ … }
#define ntoh24(p) …
#define hton24(p, v) …
#define zero_data(p) …
itt_t;
#define build_itt(itt, age) …
#define get_itt(itt) …
#define RESERVED_ITT …
struct iscsi_hdr { … };
#define ISCSI_RESERVED_TAG …
#define ISCSI_OP_RETRY …
#define ISCSI_OP_IMMEDIATE …
#define ISCSI_OPCODE_MASK …
#define ISCSI_OP_NOOP_OUT …
#define ISCSI_OP_SCSI_CMD …
#define ISCSI_OP_SCSI_TMFUNC …
#define ISCSI_OP_LOGIN …
#define ISCSI_OP_TEXT …
#define ISCSI_OP_SCSI_DATA_OUT …
#define ISCSI_OP_LOGOUT …
#define ISCSI_OP_SNACK …
#define ISCSI_OP_VENDOR1_CMD …
#define ISCSI_OP_VENDOR2_CMD …
#define ISCSI_OP_VENDOR3_CMD …
#define ISCSI_OP_VENDOR4_CMD …
#define ISCSI_OP_NOOP_IN …
#define ISCSI_OP_SCSI_CMD_RSP …
#define ISCSI_OP_SCSI_TMFUNC_RSP …
#define ISCSI_OP_LOGIN_RSP …
#define ISCSI_OP_TEXT_RSP …
#define ISCSI_OP_SCSI_DATA_IN …
#define ISCSI_OP_LOGOUT_RSP …
#define ISCSI_OP_R2T …
#define ISCSI_OP_ASYNC_EVENT …
#define ISCSI_OP_REJECT …
struct iscsi_ahs_hdr { … };
#define ISCSI_AHSTYPE_CDB …
#define ISCSI_AHSTYPE_RLENGTH …
#define ISCSI_CDB_SIZE …
struct iscsi_scsi_req { … };
#define ISCSI_FLAG_CMD_FINAL …
#define ISCSI_FLAG_CMD_READ …
#define ISCSI_FLAG_CMD_WRITE …
#define ISCSI_FLAG_CMD_ATTR_MASK …
#define ISCSI_ATTR_UNTAGGED …
#define ISCSI_ATTR_SIMPLE …
#define ISCSI_ATTR_ORDERED …
#define ISCSI_ATTR_HEAD_OF_QUEUE …
#define ISCSI_ATTR_ACA …
struct iscsi_rlength_ahdr { … };
struct iscsi_ecdb_ahdr { … };
struct iscsi_scsi_rsp { … };
#define ISCSI_FLAG_CMD_BIDI_OVERFLOW …
#define ISCSI_FLAG_CMD_BIDI_UNDERFLOW …
#define ISCSI_FLAG_CMD_OVERFLOW …
#define ISCSI_FLAG_CMD_UNDERFLOW …
#define ISCSI_STATUS_CMD_COMPLETED …
#define ISCSI_STATUS_TARGET_FAILURE …
#define ISCSI_STATUS_SUBSYS_FAILURE …
struct iscsi_async { … };
#define ISCSI_ASYNC_MSG_SCSI_EVENT …
#define ISCSI_ASYNC_MSG_REQUEST_LOGOUT …
#define ISCSI_ASYNC_MSG_DROPPING_CONNECTION …
#define ISCSI_ASYNC_MSG_DROPPING_ALL_CONNECTIONS …
#define ISCSI_ASYNC_MSG_PARAM_NEGOTIATION …
#define ISCSI_ASYNC_MSG_VENDOR_SPECIFIC …
struct iscsi_nopout { … };
struct iscsi_nopin { … };
struct iscsi_tm { … };
#define ISCSI_FLAG_TM_FUNC_MASK …
#define ISCSI_TM_FUNC_ABORT_TASK …
#define ISCSI_TM_FUNC_ABORT_TASK_SET …
#define ISCSI_TM_FUNC_CLEAR_ACA …
#define ISCSI_TM_FUNC_CLEAR_TASK_SET …
#define ISCSI_TM_FUNC_LOGICAL_UNIT_RESET …
#define ISCSI_TM_FUNC_TARGET_WARM_RESET …
#define ISCSI_TM_FUNC_TARGET_COLD_RESET …
#define ISCSI_TM_FUNC_TASK_REASSIGN …
#define ISCSI_TM_FUNC_VALUE(hdr) …
struct iscsi_tm_rsp { … };
#define ISCSI_TMF_RSP_COMPLETE …
#define ISCSI_TMF_RSP_NO_TASK …
#define ISCSI_TMF_RSP_NO_LUN …
#define ISCSI_TMF_RSP_TASK_ALLEGIANT …
#define ISCSI_TMF_RSP_NO_FAILOVER …
#define ISCSI_TMF_RSP_NOT_SUPPORTED …
#define ISCSI_TMF_RSP_AUTH_FAILED …
#define ISCSI_TMF_RSP_REJECTED …
struct iscsi_r2t_rsp { … };
struct iscsi_data { … };
struct iscsi_data_rsp { … };
#define ISCSI_FLAG_DATA_ACK …
#define ISCSI_FLAG_DATA_OVERFLOW …
#define ISCSI_FLAG_DATA_UNDERFLOW …
#define ISCSI_FLAG_DATA_STATUS …
struct iscsi_text { … };
#define ISCSI_FLAG_TEXT_CONTINUE …
struct iscsi_text_rsp { … };
struct iscsi_login_req { … };
#define ISCSI_FLAG_LOGIN_TRANSIT …
#define ISCSI_FLAG_LOGIN_CONTINUE …
#define ISCSI_FLAG_LOGIN_CURRENT_STAGE_MASK …
#define ISCSI_FLAG_LOGIN_CURRENT_STAGE1 …
#define ISCSI_FLAG_LOGIN_CURRENT_STAGE2 …
#define ISCSI_FLAG_LOGIN_CURRENT_STAGE3 …
#define ISCSI_FLAG_LOGIN_NEXT_STAGE_MASK …
#define ISCSI_FLAG_LOGIN_NEXT_STAGE1 …
#define ISCSI_FLAG_LOGIN_NEXT_STAGE2 …
#define ISCSI_FLAG_LOGIN_NEXT_STAGE3 …
#define ISCSI_LOGIN_CURRENT_STAGE(flags) …
#define ISCSI_LOGIN_NEXT_STAGE(flags) …
struct iscsi_login_rsp { … };
#define ISCSI_INITIAL_LOGIN_STAGE …
#define ISCSI_SECURITY_NEGOTIATION_STAGE …
#define ISCSI_OP_PARMS_NEGOTIATION_STAGE …
#define ISCSI_FULL_FEATURE_PHASE …
#define ISCSI_STATUS_CLS_SUCCESS …
#define ISCSI_STATUS_CLS_REDIRECT …
#define ISCSI_STATUS_CLS_INITIATOR_ERR …
#define ISCSI_STATUS_CLS_TARGET_ERR …
#define ISCSI_LOGIN_STATUS_ACCEPT …
#define ISCSI_LOGIN_STATUS_TGT_MOVED_TEMP …
#define ISCSI_LOGIN_STATUS_TGT_MOVED_PERM …
#define ISCSI_LOGIN_STATUS_INIT_ERR …
#define ISCSI_LOGIN_STATUS_AUTH_FAILED …
#define ISCSI_LOGIN_STATUS_TGT_FORBIDDEN …
#define ISCSI_LOGIN_STATUS_TGT_NOT_FOUND …
#define ISCSI_LOGIN_STATUS_TGT_REMOVED …
#define ISCSI_LOGIN_STATUS_NO_VERSION …
#define ISCSI_LOGIN_STATUS_ISID_ERROR …
#define ISCSI_LOGIN_STATUS_MISSING_FIELDS …
#define ISCSI_LOGIN_STATUS_CONN_ADD_FAILED …
#define ISCSI_LOGIN_STATUS_NO_SESSION_TYPE …
#define ISCSI_LOGIN_STATUS_NO_SESSION …
#define ISCSI_LOGIN_STATUS_INVALID_REQUEST …
#define ISCSI_LOGIN_STATUS_TARGET_ERROR …
#define ISCSI_LOGIN_STATUS_SVC_UNAVAILABLE …
#define ISCSI_LOGIN_STATUS_NO_RESOURCES …
struct iscsi_logout { … };
#define ISCSI_FLAG_LOGOUT_REASON_MASK …
#define ISCSI_LOGOUT_REASON_CLOSE_SESSION …
#define ISCSI_LOGOUT_REASON_CLOSE_CONNECTION …
#define ISCSI_LOGOUT_REASON_RECOVERY …
#define ISCSI_LOGOUT_REASON_AEN_REQUEST …
struct iscsi_logout_rsp { … };
#define ISCSI_LOGOUT_SUCCESS …
#define ISCSI_LOGOUT_CID_NOT_FOUND …
#define ISCSI_LOGOUT_RECOVERY_UNSUPPORTED …
#define ISCSI_LOGOUT_CLEANUP_FAILED …
struct iscsi_snack { … };
#define ISCSI_FLAG_SNACK_TYPE_DATA …
#define ISCSI_FLAG_SNACK_TYPE_R2T …
#define ISCSI_FLAG_SNACK_TYPE_STATUS …
#define ISCSI_FLAG_SNACK_TYPE_DATA_ACK …
#define ISCSI_FLAG_SNACK_TYPE_RDATA …
#define ISCSI_FLAG_SNACK_TYPE_MASK …
struct iscsi_reject { … };
#define ISCSI_REASON_CMD_BEFORE_LOGIN …
#define ISCSI_REASON_DATA_DIGEST_ERROR …
#define ISCSI_REASON_DATA_SNACK_REJECT …
#define ISCSI_REASON_PROTOCOL_ERROR …
#define ISCSI_REASON_CMD_NOT_SUPPORTED …
#define ISCSI_REASON_IMM_CMD_REJECT …
#define ISCSI_REASON_TASK_IN_PROGRESS …
#define ISCSI_REASON_INVALID_SNACK …
#define ISCSI_REASON_BOOKMARK_INVALID …
#define ISCSI_REASON_BOOKMARK_NO_RESOURCES …
#define ISCSI_REASON_NEGOTIATION_RESET …
#define MAX_KEY_VALUE_PAIRS …
#define KEY_MAXLEN …
#define VALUE_MAXLEN …
#define TARGET_NAME_MAXLEN …
#define ISCSI_DEF_MAX_RECV_SEG_LEN …
#define ISCSI_MIN_MAX_RECV_SEG_LEN …
#define ISCSI_MAX_MAX_RECV_SEG_LEN …
#define ISCSI_DEF_FIRST_BURST_LEN …
#define ISCSI_MIN_FIRST_BURST_LEN …
#define ISCSI_MAX_FIRST_BURST_LEN …
#define ISCSI_DEF_MAX_BURST_LEN …
#define ISCSI_MIN_MAX_BURST_LEN …
#define ISCSI_MAX_MAX_BURST_LEN …
#define ISCSI_DEF_TIME2WAIT …
#define ISCSI_NAME_LEN …
#endif