X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=mt.c;h=250856f05c29e1ea21b4a470af95ee389cfa6182;hb=a2a978ae23e267c24eb7b11662afdcc9ea47e789;hp=44f23884c5d61e5ad1dc0bda981c2b22f06b173c;hpb=499f65fb98a8258f8704b52efb3a99da0c82f785;p=oweals%2Fbusybox.git diff --git a/mt.c b/mt.c index 44f23884c..250856f05 100644 --- a/mt.c +++ b/mt.c @@ -1,14 +1,10 @@ /* vi: set sw=4 ts=4: */ -#include "internal.h" #include +#include +#include #include #include - -static const char mt_usage[] = "mt [-f device] opcode value\n" -#ifndef BB_FEATURE_TRIVIAL_HELP - "\nControl magnetic tape drive operation\n" -#endif - ; +#include "busybox.h" struct mt_opcodes { char *name; @@ -61,13 +57,13 @@ extern int mt_main(int argc, char **argv) struct mtop op; int fd; - if ((argc != 2 && argc != 3) && **(argv + 1) != '-') { - usage(mt_usage); + if (argc < 2) { + show_usage(); } if (strcmp(argv[1], "-f") == 0) { if (argc < 4) { - usage(mt_usage); + show_usage(); } file = argv[2]; argv += 2; @@ -81,8 +77,8 @@ extern int mt_main(int argc, char **argv) } if (code->name == 0) { - fprintf(stderr, "mt: unrecognized opcode %s.\n", argv[1]); - exit (FALSE); + error_msg("unrecognized opcode %s.", argv[1]); + return EXIT_FAILURE; } op.mt_op = code->value; @@ -91,15 +87,11 @@ extern int mt_main(int argc, char **argv) else op.mt_count = 1; /* One, not zero, right? */ - if ((fd = open(file, O_RDONLY, 0)) < 0) { - perror(file); - exit (FALSE); - } + if ((fd = open(file, O_RDONLY, 0)) < 0) + perror_msg_and_die("%s", file); - if (ioctl(fd, MTIOCTOP, &op) != 0) { - perror(file); - exit (FALSE); - } + if (ioctl(fd, MTIOCTOP, &op) != 0) + perror_msg_and_die("%s", file); - exit (TRUE); + return EXIT_SUCCESS; }