Files
scst/iscsi-scst/kernel/isert-scst/iser_datamover.h
T
Yan Burman 36c28d69b4 Merge iser branch
Merged revisions:
5228-5237,5243-5245,5257-5259,5261-5263,5278-5280,5297-5299,5313-5314,5317-5319,5327-5328,5341-5343,5453,5486,5519,5528-5531,5559,5576,5655-5656,5660




git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.0.x-iser@5663 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-07-07 06:40:57 +00:00

60 lines
2.1 KiB
C

#ifndef __ISER_DATAMOVER_H__
#define __ISER_DATAMOVER_H__
#include "iscsi.h"
/* iscsi layer calling iser */
int isert_datamover_init(void);
int isert_datamover_cleanup(void);
void *isert_portal_add(struct sockaddr *sa, size_t addr_len);
int isert_portal_remove(void *portal_h);
struct iscsi_cmnd *isert_alloc_login_rsp_pdu(struct iscsi_conn *iscsi_conn);
int isert_get_peer_addr(struct iscsi_conn *iscsi_conn, struct sockaddr *sa,
size_t *addr_len);
int isert_get_target_addr(struct iscsi_conn *iscsi_conn, struct sockaddr *sa,
size_t *addr_len);
/* last: if last transition into FF (Fully Featured) state */
int isert_login_rsp_tx(struct iscsi_cmnd *login_rsp,
int last, int discovery);
int isert_set_session_params(struct iscsi_conn *iscsi_conn,
struct iscsi_sess_params *sess_params,
struct iscsi_tgt_params *tgt_params);
struct iscsi_cmnd *isert_alloc_scsi_rsp_pdu(struct iscsi_conn *iscsi_conn);
struct iscsi_cmnd *isert_alloc_scsi_fake_pdu(struct iscsi_conn *iscsi_conn);
int isert_pdu_tx(struct iscsi_cmnd *pdu);
int isert_request_data_out(struct iscsi_cmnd *cmd);
int isert_send_data_in(struct iscsi_cmnd *cmd, struct iscsi_cmnd *rsp);
int isert_send_status(struct iscsi_cmnd *rsp);
int isert_close_connection(struct iscsi_conn *iscsi_conn);
int isert_task_abort(struct iscsi_cmnd *cmnd);
void isert_free_connection(struct iscsi_conn *iscsi_conn);
void isert_release_tx_pdu(struct iscsi_cmnd *iscsi_pdu);
void isert_release_rx_pdu(struct iscsi_cmnd *cmnd);
/* iser calling iscsi layer */
int isert_conn_established(struct iscsi_conn *iscsi_conn,
struct sockaddr *from_addr, int addr_len);
int isert_login_req_rx(struct iscsi_cmnd *login_req);
int isert_pdu_rx(struct iscsi_cmnd *pdu);
int isert_data_out_ready(struct iscsi_cmnd *cmd);
int isert_data_in_sent(struct iscsi_cmnd *cmd);
int isert_pdu_sent(struct iscsi_cmnd *pdu);
void isert_pdu_err(struct iscsi_cmnd *pdu);
int isert_connection_closed(struct iscsi_conn *iscsi_conn);
void *isert_get_priv(struct iscsi_conn *iscsi_conn);
void isert_set_priv(struct iscsi_conn *iscsi_conn, void *priv);
#endif