aboutsummaryrefslogtreecommitdiff
path: root/src/sg_bg_ctl.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/sg_bg_ctl.c')
-rw-r--r--src/sg_bg_ctl.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/sg_bg_ctl.c b/src/sg_bg_ctl.c
index 3f0b7997..008fee6f 100644
--- a/src/sg_bg_ctl.c
+++ b/src/sg_bg_ctl.c
@@ -33,7 +33,7 @@
* device. Based on sbc4r10.pdf .
*/
-static const char * version_str = "1.04 20180126";
+static const char * version_str = "1.05 20180210";
#define BACKGROUND_CONTROL_SA 0x15
@@ -115,12 +115,9 @@ sg_ll_background_control(int sg_fd, unsigned int bo_ctl, unsigned int bo_time,
res = do_scsi_pt(ptvp, sg_fd, DEF_PT_TIMEOUT, verbose);
ret = sg_cmds_process_resp(ptvp, cmd_name, res, SG_NO_DATA_IN, sense_b,
noisy, verbose, &sense_cat);
- if (-1 == ret) {
- int os_err = get_scsi_pt_os_err(ptvp);
-
- if ((os_err > 0) && (os_err < 47))
- ret = SG_LIB_OS_BASE_ERR + os_err;
- } else if (-2 == ret) {
+ if (-1 == ret)
+ ret = sg_convert_errno(get_scsi_pt_os_err(ptvp));
+ else if (-2 == ret) {
switch (sense_cat) {
case SG_LIB_CAT_RECOVERED:
case SG_LIB_CAT_NO_SENSE: