diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2023-03-13 10:45:23 +0100 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2023-03-15 09:36:26 +0100 |
commit | c6f85c3c40627aca5963b534a132d64dbab3c118 (patch) | |
tree | 0c1f312aaab78e58cd18bd9eb81e19ff2dfe47f4 /src/udev/ata_id | |
parent | 61da49cfd68a0eed918168735caea9134fe9b72e (diff) | |
download | systemd-c6f85c3c40627aca5963b534a132d64dbab3c118.tar.gz |
udev/ata_id: convert to run()
Diffstat (limited to 'src/udev/ata_id')
-rw-r--r-- | src/udev/ata_id/ata_id.c | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/udev/ata_id/ata_id.c b/src/udev/ata_id/ata_id.c index c1e0a6f3f3..72a35f0aa1 100644 --- a/src/udev/ata_id/ata_id.c +++ b/src/udev/ata_id/ata_id.c @@ -26,6 +26,7 @@ #include "device-nodes.h" #include "fd-util.h" #include "log.h" +#include "main-func.h" #include "memory-util.h" #include "udev-util.h" @@ -423,7 +424,7 @@ static int parse_argv(int argc, char *argv[]) { return 1; } -int main(int argc, char *argv[]) { +static int run(int argc, char *argv[]) { struct hd_driveid id; union { uint8_t byte[512]; @@ -444,13 +445,11 @@ int main(int argc, char *argv[]) { r = parse_argv(argc, argv); if (r <= 0) - return r < 0 ? 1 : 0; + return r; fd = open(ASSERT_PTR(arg_device), O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_NOCTTY); - if (fd < 0) { - log_error_errno(errno, "Cannot open %s: %m", arg_device); - return 1; - } + if (fd < 0) + return log_error_errno(errno, "Cannot open %s: %m", arg_device); if (disk_identify(fd, identify.byte, &is_packet_device) == 0) { /* @@ -482,10 +481,8 @@ int main(int argc, char *argv[]) { memcpy(&id, identify.byte, sizeof id); } else { /* If this fails, then try HDIO_GET_IDENTITY */ - if (ioctl(fd, HDIO_GET_IDENTITY, &id) != 0) { - log_debug_errno(errno, "%s: HDIO_GET_IDENTITY failed: %m", arg_device); - return 2; - } + if (ioctl(fd, HDIO_GET_IDENTITY, &id) != 0) + return log_debug_errno(errno, "%s: HDIO_GET_IDENTITY failed: %m", arg_device); } memcpy(model, id.model, 40); @@ -656,3 +653,5 @@ int main(int argc, char *argv[]) { return 0; } + +DEFINE_MAIN_FUNCTION(run); |