From c07dee474c837aa19af3584f24f6c465bed7c198 Mon Sep 17 00:00:00 2001 From: Ronnie Sahlberg Date: Sat, 19 Feb 2011 18:23:03 +1100 Subject: [PATCH] TaskManagement: Add LunReset, TargetWarmReset, TargetColdReset --- include/iscsi.h | 10 ++++++++++ lib/task_mgmt.c | 31 +++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) diff --git a/include/iscsi.h b/include/iscsi.h index 7d96fe6..b982c10 100644 --- a/include/iscsi.h +++ b/include/iscsi.h @@ -458,6 +458,16 @@ int iscsi_task_mgmt_abort_task_set_async(struct iscsi_context *iscsi, uint32_t lun, iscsi_command_cb cb, void *private_data); +int +iscsi_task_mgmt_lun_reset_async(struct iscsi_context *iscsi, + uint32_t lun, + iscsi_command_cb cb, void *private_data); +int +iscsi_task_mgmt_target_warm_reset_async(struct iscsi_context *iscsi, + iscsi_command_cb cb, void *private_data); +int +iscsi_task_mgmt_target_cold_reset_async(struct iscsi_context *iscsi, + iscsi_command_cb cb, void *private_data); diff --git a/lib/task_mgmt.c b/lib/task_mgmt.c index 35f4157..751a23a 100644 --- a/lib/task_mgmt.c +++ b/lib/task_mgmt.c @@ -109,4 +109,35 @@ iscsi_task_mgmt_abort_task_set_async(struct iscsi_context *iscsi, cb, private_data); } +int +iscsi_task_mgmt_lun_reset_async(struct iscsi_context *iscsi, + uint32_t lun, + iscsi_command_cb cb, void *private_data) +{ + return iscsi_task_mgmt_async(iscsi, + lun, ISCSI_TM_LUN_RESET, + 0xffffffff, 0, + cb, private_data); +} + +int +iscsi_task_mgmt_target_warm_reset_async(struct iscsi_context *iscsi, + iscsi_command_cb cb, void *private_data) +{ + return iscsi_task_mgmt_async(iscsi, + 0, ISCSI_TM_TARGET_WARM_RESET, + 0xffffffff, 0, + cb, private_data); +} + +int +iscsi_task_mgmt_target_cold_reset_async(struct iscsi_context *iscsi, + iscsi_command_cb cb, void *private_data) +{ + return iscsi_task_mgmt_async(iscsi, + 0, ISCSI_TM_TARGET_COLD_RESET, + 0xffffffff, 0, + cb, private_data); +} +