X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=extras%2Fscsi_id%2Fscsi_serial.c;h=c47712d859e0c513c0c8e55ecc5d3b89713d5d4d;hp=757f41d14e2e30ab5ff43d3c2015160452d79247;hb=9060b066d9e7aaca9795010ac5fff61018947f87;hpb=7d563a17f3967890331daf08d43f2f005418139b diff --git a/extras/scsi_id/scsi_serial.c b/extras/scsi_id/scsi_serial.c index 757f41d14..c47712d85 100644 --- a/extras/scsi_id/scsi_serial.c +++ b/extras/scsi_id/scsi_serial.c @@ -30,7 +30,8 @@ /* #include */ #include "bsg.h" -#include "../../udev/udev.h" +#include "libudev.h" +#include "libudev-private.h" #include "scsi.h" #include "scsi_id.h" @@ -156,7 +157,7 @@ static int sg_err_category4(struct udev *udev, struct sg_io_v4 *hp) { return sg_err_category_new(udev, hp->device_status, 0, hp->transport_status, hp->driver_status, - (unsigned char *)hp->response, + (unsigned char *)(uintptr_t)hp->response, hp->response_len); } @@ -300,7 +301,7 @@ static int scsi_dump_v4(struct udev *udev, dev_scsi->kernel, io->driver_status, io->transport_status, io->device_status); if (io->device_status == SCSI_CHECK_CONDITION) - return scsi_dump_sense(udev, dev_scsi, (unsigned char *)io->response, + return scsi_dump_sense(udev, dev_scsi, (unsigned char *)(uintptr_t)io->response, io->response_len); else return -1; @@ -837,7 +838,7 @@ out: int scsi_get_serial(struct udev *udev, struct scsi_id_device *dev_scsi, const char *devname, - int page_code, char *serial_short, int len) + int page_code, int len) { unsigned char page0[SCSI_INQ_BUFF_LEN]; int fd = -1; @@ -860,7 +861,7 @@ int scsi_get_serial(struct udev *udev, return 1; if (page_code == PAGE_80) { - if (do_scsi_page80_inquiry(udev, dev_scsi, fd, dev_scsi->serial, serial_short, len)) { + if (do_scsi_page80_inquiry(udev, dev_scsi, fd, dev_scsi->serial, dev_scsi->serial_short, len)) { retval = 1; goto completed; } else { @@ -868,7 +869,7 @@ int scsi_get_serial(struct udev *udev, goto completed; } } else if (page_code == PAGE_83) { - if (do_scsi_page83_inquiry(udev, dev_scsi, fd, dev_scsi->serial, serial_short, len)) { + if (do_scsi_page83_inquiry(udev, dev_scsi, fd, dev_scsi->serial, dev_scsi->serial_short, len)) { retval = 1; goto completed; } else { @@ -876,7 +877,7 @@ int scsi_get_serial(struct udev *udev, goto completed; } } else if (page_code == PAGE_83_PRE_SPC3) { - retval = do_scsi_page83_prespc3_inquiry(udev, dev_scsi, fd, dev_scsi->serial, serial_short, len); + retval = do_scsi_page83_prespc3_inquiry(udev, dev_scsi, fd, dev_scsi->serial, dev_scsi->serial_short, len); if (retval) { /* * Fallback to servicing a SPC-2/3 compliant page 83 @@ -884,7 +885,7 @@ int scsi_get_serial(struct udev *udev, * conform to pre-SPC3 expectations. */ if (retval == 2) { - if (do_scsi_page83_inquiry(udev, dev_scsi, fd, dev_scsi->serial, serial_short, len)) { + if (do_scsi_page83_inquiry(udev, dev_scsi, fd, dev_scsi->serial, dev_scsi->serial_short, len)) { retval = 1; goto completed; } else { @@ -924,7 +925,7 @@ int scsi_get_serial(struct udev *udev, for (ind = 4; ind <= page0[3] + 3; ind++) if (page0[ind] == PAGE_83) if (!do_scsi_page83_inquiry(udev, dev_scsi, fd, - dev_scsi->serial, serial_short, len)) { + dev_scsi->serial, dev_scsi->serial_short, len)) { /* * Success */ @@ -935,7 +936,7 @@ int scsi_get_serial(struct udev *udev, for (ind = 4; ind <= page0[3] + 3; ind++) if (page0[ind] == PAGE_80) if (!do_scsi_page80_inquiry(udev, dev_scsi, fd, - dev_scsi->serial, serial_short, len)) { + dev_scsi->serial, dev_scsi->serial_short, len)) { /* * Success */