diff options
Diffstat (limited to 'sysutils/nut-devel/files/patch-drivers_riello__usb.c')
-rw-r--r-- | sysutils/nut-devel/files/patch-drivers_riello__usb.c | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/sysutils/nut-devel/files/patch-drivers_riello__usb.c b/sysutils/nut-devel/files/patch-drivers_riello__usb.c new file mode 100644 index 000000000000..759aa91ff62a --- /dev/null +++ b/sysutils/nut-devel/files/patch-drivers_riello__usb.c @@ -0,0 +1,53 @@ +--- drivers/riello_usb.c.orig 2015-12-29 12:08:34 UTC ++++ drivers/riello_usb.c +@@ -346,42 +346,28 @@ int riello_command(uint8_t *cmd, uint8_t *buf, uint16_ + + switch (ret) + { +- case -EBUSY: /* Device or resource busy */ ++ case LIBUSB_ERROR_BUSY: /* Device or resource busy */ + fatal_with_errno(EXIT_FAILURE, "Got disconnected by another driver"); + +- case -EPERM: /* Operation not permitted */ +- fatal_with_errno(EXIT_FAILURE, "Permissions problem"); +- +- case -EPIPE: /* Broken pipe */ ++ case LIBUSB_ERROR_PIPE: /* Broken pipe */ + if (usb_clear_halt(udev, 0x81) == 0) { + upsdebugx(1, "Stall condition cleared"); + break; + } +-#ifdef ETIME +- case -ETIME: /* Timer expired */ +-#endif + if (usb_reset(udev) == 0) { + upsdebugx(1, "Device reset handled"); + } +- case -ENODEV: /* No such device */ +- case -EACCES: /* Permission denied */ +- case -EIO: /* I/O error */ +- case -ENXIO: /* No such device or address */ +- case -ENOENT: /* No such file or directory */ ++ case LIBUSB_ERROR_NO_DEVICE: /* No such device */ ++ case LIBUSB_ERROR_ACCESS: /* Permission denied */ ++ case LIBUSB_ERROR_IO: /* I/O error */ ++ case LIBUSB_ERROR_NOT_FOUND: /* No such file or directory */ + /* Uh oh, got to reconnect! */ + usb->close(udev); + udev = NULL; + break; + +- case -ETIMEDOUT: /* Connection timed out */ +- upsdebugx (3, "riello_command err: Resource temporarily unavailable"); +- +- +- case -EOVERFLOW: /* Value too large for defined data type */ +-#ifdef EPROTO +- case -EPROTO: /* Protocol error */ +-#endif +- break; ++ case LIBUSB_ERROR_TIMEOUT: /* Connection timed out */ ++ case LIBUSB_ERROR_OVERFLOW: /* Value too large for defined data type */ + default: + break; + } |