Skip to content

Commit

Permalink
Merge pull request sahlberg#10 from aredlich/master
Browse files Browse the repository at this point in the history
Please pull from my fork of libiscsi
  • Loading branch information
sahlberg committed Jul 8, 2012
2 parents 968031b + f844107 commit f37827d
Show file tree
Hide file tree
Showing 4 changed files with 42 additions and 17 deletions.
8 changes: 8 additions & 0 deletions include/iscsi-private.h
Expand Up @@ -24,6 +24,10 @@
#define ssize_t SSIZE_T
#endif

#ifdef __cplusplus
extern "C" {
#endif

#ifndef discard_const
#define discard_const(ptr) ((void *)((intptr_t)(ptr)))
#endif
Expand Down Expand Up @@ -267,5 +271,9 @@ struct scsi_task *iscsi_scsi_get_task_from_pdu(struct iscsi_pdu *pdu);

int iscsi_reconnect(struct iscsi_context *iscsi);

#ifdef __cplusplus
}
#endif

#endif /* __iscsi_private_h__ */

32 changes: 20 additions & 12 deletions include/iscsi.h
Expand Up @@ -25,6 +25,10 @@
#define EXTERN
#endif

#ifdef __cplusplus
extern "C" {
#endif

struct iscsi_context;
struct sockaddr;

Expand Down Expand Up @@ -465,11 +469,11 @@ enum iscsi_task_mgmt_funcs {
* abort_task will also cancel the scsi task. The callback for the scsi task will be invoked with
* SCSI_STATUS_CANCELLED
* abort_task_set, lun_reset, target_warn_reset, target_cold_reset will cancel all tasks. The callback for
* all tasks will be invoked with SCSI_STATUS_CANCELLED
* all tasks will be invoked with SCSI_STATUS_CANCELLED
*/
EXTERN int
iscsi_task_mgmt_async(struct iscsi_context *iscsi,
int lun, enum iscsi_task_mgmt_funcs function,
int lun, enum iscsi_task_mgmt_funcs function,
uint32_t ritt, uint32_t rcmdscn,
iscsi_command_cb cb, void *private_data);

Expand Down Expand Up @@ -542,7 +546,7 @@ iscsi_set_isid_reserved(struct iscsi_context *iscsi);



/*
/*
* The scsi commands use/return a scsi_task structure when invoked
* and also through the callback.
*
Expand Down Expand Up @@ -612,7 +616,7 @@ iscsi_read10_task(struct iscsi_context *iscsi, int lun, uint32_t lba,
int rdprotect, int dpo, int fua, int fua_nv, int group_number,
iscsi_command_cb cb, void *private_data);
EXTERN struct scsi_task *
iscsi_write10_task(struct iscsi_context *iscsi, int lun, uint32_t lba,
iscsi_write10_task(struct iscsi_context *iscsi, int lun, uint32_t lba,
unsigned char *data, uint32_t datalen, int blocksize,
int wrprotect, int dpo, int fua, int fua_nv, int group_number,
iscsi_command_cb cb, void *private_data);
Expand All @@ -622,7 +626,7 @@ iscsi_read12_task(struct iscsi_context *iscsi, int lun, uint32_t lba,
int rdprotect, int dpo, int fua, int fua_nv, int group_number,
iscsi_command_cb cb, void *private_data);
EXTERN struct scsi_task *
iscsi_write12_task(struct iscsi_context *iscsi, int lun, uint32_t lba,
iscsi_write12_task(struct iscsi_context *iscsi, int lun, uint32_t lba,
unsigned char *data, uint32_t datalen, int blocksize,
int wrprotect, int dpo, int fua, int fua_nv, int group_number,
iscsi_command_cb cb, void *private_data);
Expand All @@ -632,26 +636,26 @@ iscsi_read16_task(struct iscsi_context *iscsi, int lun, uint64_t lba,
int rdprotect, int dpo, int fua, int fua_nv, int group_number,
iscsi_command_cb cb, void *private_data);
EXTERN struct scsi_task *
iscsi_write16_task(struct iscsi_context *iscsi, int lun, uint64_t lba,
iscsi_write16_task(struct iscsi_context *iscsi, int lun, uint64_t lba,
unsigned char *data, uint32_t datalen, int blocksize,
int wrprotect, int dpo, int fua, int fua_nv, int group_number,
iscsi_command_cb cb, void *private_data);
EXTERN struct scsi_task *
iscsi_verify10_task(struct iscsi_context *iscsi, int lun,
unsigned char *data, uint32_t datalen, uint32_t lba,
int vprotect, int dpo, int bytchk,
int vprotect, int dpo, int bytchk,
int blocksize, iscsi_command_cb cb,
void *private_data);
EXTERN struct scsi_task *
iscsi_verify12_task(struct iscsi_context *iscsi, int lun,
unsigned char *data, uint32_t datalen, uint32_t lba,
int vprotect, int dpo, int bytchk,
int vprotect, int dpo, int bytchk,
int blocksize, iscsi_command_cb cb,
void *private_data);
EXTERN struct scsi_task *
iscsi_verify16_task(struct iscsi_context *iscsi, int lun,
unsigned char *data, uint32_t datalen, uint64_t lba,
int vprotect, int dpo, int bytchk,
int vprotect, int dpo, int bytchk,
int blocksize, iscsi_command_cb cb,
void *private_data);
EXTERN struct scsi_task *
Expand Down Expand Up @@ -762,19 +766,19 @@ iscsi_prefetch16_sync(struct iscsi_context *iscsi, int lun, uint64_t lba,
EXTERN struct scsi_task *
iscsi_verify10_sync(struct iscsi_context *iscsi, int lun,
unsigned char *data, uint32_t datalen, uint32_t lba,
int vprotect, int dpo, int bytchk,
int vprotect, int dpo, int bytchk,
int blocksize);

EXTERN struct scsi_task *
iscsi_verify12_sync(struct iscsi_context *iscsi, int lun,
unsigned char *data, uint32_t datalen, uint32_t lba,
int vprotect, int dpo, int bytchk,
int vprotect, int dpo, int bytchk,
int blocksize);

EXTERN struct scsi_task *
iscsi_verify16_sync(struct iscsi_context *iscsi, int lun,
unsigned char *data, uint32_t datalen, uint64_t lba,
int vprotect, int dpo, int bytchk,
int vprotect, int dpo, int bytchk,
int blocksize);

EXTERN struct scsi_task *
Expand Down Expand Up @@ -839,4 +843,8 @@ iscsi_scsi_task_cancel(struct iscsi_context *iscsi,
EXTERN void
iscsi_scsi_cancel_all_tasks(struct iscsi_context *iscsi);

#ifdef __cplusplus
}
#endif

#endif /* __iscsi_h__ */
12 changes: 10 additions & 2 deletions include/scsi-lowlevel.h
Expand Up @@ -17,6 +17,10 @@
#ifndef __scsi_lowlevel_h__
#define __scsi_lowlevel_h__

#ifdef __cplusplus
extern "C" {
#endif

#define SCSI_CDB_MAX_SIZE 16

enum scsi_opcode {
Expand Down Expand Up @@ -505,7 +509,7 @@ struct scsi_mode_page_caching {
int minimum_prefetch;
int maximum_prefetch;
int maximum_prefetch_ceiling;

int fsw;
int lbcss;
int dra;
Expand Down Expand Up @@ -571,7 +575,7 @@ struct scsi_mode_sense {
uint8_t medium_type;
uint8_t device_specific_parameter;
uint8_t block_descriptor_length;
struct scsi_mode_page *pages;
struct scsi_mode_page *pages;
};

EXTERN struct scsi_task *scsi_cdb_modesense6(int dbd,
Expand Down Expand Up @@ -639,5 +643,9 @@ EXTERN struct scsi_task *scsi_cdb_prefetch16(uint64_t lba, int num_blocks, int i

void *scsi_malloc(struct scsi_task *task, size_t size);

#ifdef __cplusplus
}
#endif

#endif /* __scsi_lowlevel_h__ */

7 changes: 4 additions & 3 deletions include/slist.h
Expand Up @@ -15,6 +15,9 @@
along with this program; if not, see <http://www.gnu.org/licenses/>.
*/

#ifndef __iscsi_slist_h__
#define __iscsi_slist_h__

#define SLIST_ADD(list, item) \
do { \
(item)->next = (*list); \
Expand Down Expand Up @@ -46,6 +49,4 @@
(*list) = head; \
}




#endif /* __iscsi_slist_h__ */

0 comments on commit f37827d

Please sign in to comment.