/*
* ata_id - reads product/serial number from ATA drives
*
- * Copyright (C) 2005-2008 Kay Sievers <kay.sievers@vrfy.org>
+ * Copyright (C) 2005-2008 Kay Sievers <kay@vrfy.org>
* Copyright (C) 2009 Lennart Poettering <lennart@poettering.net>
* Copyright (C) 2009-2010 David Zeuthen <zeuthen@gmail.com>
*
#include "libudev.h"
#include "libudev-private.h"
+#include "log.h"
#define COMMAND_TIMEOUT_MSEC (30 * 1000)
int is_packet_device;
/* init results */
- ret = -1;
memset(out_identify, '\0', 512);
is_packet_device = 0;
if (udev == NULL)
goto exit;
- udev_log_init("ata_id");
+ log_open();
udev_set_log_fn(udev, log_fn);
while (1) {
node = argv[optind];
if (node == NULL) {
- err(udev, "no node specified\n");
+ log_error("no node specified\n");
rc = 1;
goto exit;
}
fd = open(node, O_RDONLY|O_NONBLOCK);
if (fd < 0) {
- err(udev, "unable to open '%s'\n", node);
+ log_error("unable to open '%s'\n", node);
rc = 1;
goto exit;
}
* use and copy it into the hd_driveid struct for convenience
*/
disk_identify_fixup_string(identify, 10, 20); /* serial */
- disk_identify_fixup_string(identify, 23, 6); /* fwrev */
+ disk_identify_fixup_string(identify, 23, 8); /* fwrev */
disk_identify_fixup_string(identify, 27, 40); /* model */
disk_identify_fixup_uint16(identify, 0); /* configuration */
disk_identify_fixup_uint16(identify, 75); /* queue depth */
} else {
/* If this fails, then try HDIO_GET_IDENTITY */
if (ioctl(fd, HDIO_GET_IDENTITY, &id) != 0) {
- info(udev, "HDIO_GET_IDENTITY failed for '%s': %m\n", node);
+ log_info("HDIO_GET_IDENTITY failed for '%s': %m\n", node);
rc = 2;
goto close;
}
close(fd);
exit:
udev_unref(udev);
- udev_log_close();
+ log_close();
return rc;
}