#include "alloc-util.h"
#include "fd-util.h"
+#include "main-func.h"
#include "mtd_probe.h"
static const char *arg_device = NULL;
return 1;
}
-int main(int argc, char** argv) {
+static int run(int argc, char** argv) {
_cleanup_close_ int mtd_fd = -EBADF;
mtd_info_t mtd_info;
int r;
r = parse_argv(argc, argv);
if (r <= 0)
- return r < 0 ? EXIT_FAILURE : 0;
+ return r;
mtd_fd = open(argv[1], O_RDONLY|O_CLOEXEC|O_NOCTTY);
- if (mtd_fd < 0) {
- log_error_errno(errno, "Failed to open: %m");
- return EXIT_FAILURE;
- }
+ if (mtd_fd < 0)
+ return log_error_errno(errno, "Failed to open: %m");
- if (ioctl(mtd_fd, MEMGETINFO, &mtd_info) < 0) {
- log_error_errno(errno, "Failed to issue MEMGETINFO ioctl: %m");
- return EXIT_FAILURE;
- }
+ if (ioctl(mtd_fd, MEMGETINFO, &mtd_info) < 0)
+ return log_error_errno(errno, "MEMGETINFO ioctl failed: %m");
- if (probe_smart_media(mtd_fd, &mtd_info) < 0)
- return EXIT_FAILURE;
-
- return EXIT_SUCCESS;
+ return probe_smart_media(mtd_fd, &mtd_info);
}
+
+DEFINE_MAIN_FUNCTION(run);