binfmt.c | binfmt.c | |||
---|---|---|---|---|
skipping to change at line 125 | skipping to change at line 125 | |||
continue; | continue; | |||
k = apply_rule(p); | k = apply_rule(p); | |||
if (k < 0 && r == 0) | if (k < 0 && r == 0) | |||
r = k; | r = k; | |||
} | } | |||
return r; | return r; | |||
} | } | |||
static int help(void) { | static void help(void) { | |||
printf("%s [OPTIONS...] [CONFIGURATION FILE...]\n\n" | printf("%s [OPTIONS...] [CONFIGURATION FILE...]\n\n" | |||
"Registers binary formats.\n\n" | "Registers binary formats.\n\n" | |||
" -h --help Show this help\n" | " -h --help Show this help\n" | |||
" --version Show package version\n", | " --version Show package version\n" | |||
program_invocation_short_name); | , program_invocation_short_name); | |||
return 0; | ||||
} | } | |||
static int parse_argv(int argc, char *argv[]) { | static int parse_argv(int argc, char *argv[]) { | |||
enum { | enum { | |||
ARG_VERSION = 0x100, | ARG_VERSION = 0x100, | |||
}; | }; | |||
static const struct option options[] = { | static const struct option options[] = { | |||
{ "help", no_argument, NULL, 'h' }, | { "help", no_argument, NULL, 'h' }, | |||
{ "version", no_argument, NULL, ARG_VERSION }, | { "version", no_argument, NULL, ARG_VERSION }, | |||
{} | {} | |||
}; | }; | |||
int c; | int c; | |||
assert(argc >= 0); | assert(argc >= 0); | |||
assert(argv); | assert(argv); | |||
while ((c = getopt_long(argc, argv, "h", options, NULL)) >= 0) { | while ((c = getopt_long(argc, argv, "h", options, NULL)) >= 0) | |||
switch (c) { | switch (c) { | |||
case 'h': | case 'h': | |||
return help(); | help(); | |||
return 0; | ||||
case ARG_VERSION: | case ARG_VERSION: | |||
puts(PACKAGE_STRING); | puts(PACKAGE_STRING); | |||
puts(SYSTEMD_FEATURES); | puts(SYSTEMD_FEATURES); | |||
return 0; | return 0; | |||
case '?': | case '?': | |||
return -EINVAL; | return -EINVAL; | |||
default: | default: | |||
assert_not_reached("Unhandled option"); | assert_not_reached("Unhandled option"); | |||
} | } | |||
} | ||||
return 1; | return 1; | |||
} | } | |||
int main(int argc, char *argv[]) { | int main(int argc, char *argv[]) { | |||
int r, k; | int r, k; | |||
r = parse_argv(argc, argv); | r = parse_argv(argc, argv); | |||
if (r <= 0) | if (r <= 0) | |||
return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS; | return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS; | |||
End of changes. 5 change blocks. | ||||
9 lines changed or deleted | 6 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |