mirror of
https://github.com/sheumann/hush.git
synced 2024-12-22 14:30:31 +00:00
change the hardcoded error constant (0x80000000UL) to a nice flexible define (BB_GETOPT_ERROR)
This commit is contained in:
parent
55e2cf6533
commit
348e84c202
@ -70,7 +70,7 @@ extern int ar_main(int argc, char **argv)
|
|||||||
bb_opt_complementaly = "p~tx:t~px:x~pt";
|
bb_opt_complementaly = "p~tx:t~px:x~pt";
|
||||||
opt = bb_getopt_ulflags(argc, argv, "ptxovcr");
|
opt = bb_getopt_ulflags(argc, argv, "ptxovcr");
|
||||||
|
|
||||||
if ((opt & 0x80000000UL) || (opt == 0) || (optind == argc)) {
|
if ((opt & BB_GETOPT_ERROR) || (opt == 0) || (optind == argc)) {
|
||||||
bb_show_usage();
|
bb_show_usage();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -88,7 +88,7 @@ extern int dpkg_deb_main(int argc, char **argv)
|
|||||||
argcount = 2;
|
argcount = 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((optind + argcount != argc) || (opt & 0x80000000UL)) {
|
if ((optind + argcount != argc) || (opt & BB_GETOPT_ERROR)) {
|
||||||
bb_show_usage();
|
bb_show_usage();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -724,7 +724,7 @@ int tar_main(int argc, char **argv)
|
|||||||
);
|
);
|
||||||
|
|
||||||
/* Check one and only one context option was given */
|
/* Check one and only one context option was given */
|
||||||
if(opt & 0x80000000UL) {
|
if(opt & BB_GETOPT_ERROR) {
|
||||||
bb_show_usage();
|
bb_show_usage();
|
||||||
}
|
}
|
||||||
#ifdef CONFIG_FEATURE_TAR_CREATE
|
#ifdef CONFIG_FEATURE_TAR_CREATE
|
||||||
|
@ -300,7 +300,7 @@ extern int cut_main(int argc, char **argv)
|
|||||||
part = opt & (OPT_BYTE_FLGS|OPT_CHAR_FLGS|OPT_FIELDS_FLGS);
|
part = opt & (OPT_BYTE_FLGS|OPT_CHAR_FLGS|OPT_FIELDS_FLGS);
|
||||||
if(part == 0)
|
if(part == 0)
|
||||||
bb_error_msg_and_die("you must specify a list of bytes, characters, or fields");
|
bb_error_msg_and_die("you must specify a list of bytes, characters, or fields");
|
||||||
if(opt & 0x80000000UL)
|
if(opt & BB_GETOPT_ERROR)
|
||||||
bb_error_msg_and_die("only one type of list may be specified");
|
bb_error_msg_and_die("only one type of list may be specified");
|
||||||
parse_lists(sopt);
|
parse_lists(sopt);
|
||||||
if((opt & (OPT_DELIM_FLGS))) {
|
if((opt & (OPT_DELIM_FLGS))) {
|
||||||
|
@ -166,7 +166,7 @@ int date_main(int argc, char **argv)
|
|||||||
bb_error_msg_and_die(bb_msg_memory_exhausted);
|
bb_error_msg_and_die(bb_msg_memory_exhausted);
|
||||||
}
|
}
|
||||||
use_arg = opt & DATE_OPT_DATE;
|
use_arg = opt & DATE_OPT_DATE;
|
||||||
if(opt & 0x80000000UL)
|
if(opt & BB_GETOPT_ERROR)
|
||||||
bb_show_usage();
|
bb_show_usage();
|
||||||
#ifdef CONFIG_FEATURE_DATE_ISOFMT
|
#ifdef CONFIG_FEATURE_DATE_ISOFMT
|
||||||
if(opt & DATE_OPT_TIMESPEC) {
|
if(opt & DATE_OPT_TIMESPEC) {
|
||||||
|
@ -64,7 +64,7 @@ extern int id_main(int argc, char **argv)
|
|||||||
bb_opt_complementaly = "u~g:g~u";
|
bb_opt_complementaly = "u~g:g~u";
|
||||||
flags = bb_getopt_ulflags(argc, argv, "rnug");
|
flags = bb_getopt_ulflags(argc, argv, "rnug");
|
||||||
|
|
||||||
if ((flags & 0x80000000UL)
|
if ((flags & BB_GETOPT_ERROR)
|
||||||
/* Don't allow -n -r -nr */
|
/* Don't allow -n -r -nr */
|
||||||
|| (flags <= 3 && flags > 0)
|
|| (flags <= 3 && flags > 0)
|
||||||
/* Don't allow more than one username */
|
/* Don't allow more than one username */
|
||||||
|
@ -69,7 +69,7 @@ extern int install_main(int argc, char **argv)
|
|||||||
flags = bb_getopt_ulflags(argc, argv, "cdpsg:m:o:", &gid_str, &mode_str, &uid_str); /* 'a' must be 2nd */
|
flags = bb_getopt_ulflags(argc, argv, "cdpsg:m:o:", &gid_str, &mode_str, &uid_str); /* 'a' must be 2nd */
|
||||||
|
|
||||||
/* Check valid options were given */
|
/* Check valid options were given */
|
||||||
if(flags & 0x80000000UL) {
|
if(flags & BB_GETOPT_ERROR) {
|
||||||
bb_show_usage();
|
bb_show_usage();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -238,7 +238,7 @@ start_stop_daemon_main(int argc, char **argv)
|
|||||||
&startas, &cmdname, &signame, &userspec, &execname, &pidfile);
|
&startas, &cmdname, &signame, &userspec, &execname, &pidfile);
|
||||||
|
|
||||||
/* Check one and only one context option was given */
|
/* Check one and only one context option was given */
|
||||||
if ((opt & 0x80000000UL) || (opt & (SSD_CTX_STOP | SSD_CTX_START)) == 0) {
|
if ((opt & BB_GETOPT_ERROR) || (opt & (SSD_CTX_STOP | SSD_CTX_START)) == 0) {
|
||||||
bb_show_usage();
|
bb_show_usage();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -151,6 +151,7 @@ extern FILE *bb_xfopen(const char *path, const char *mode);
|
|||||||
extern int bb_fclose_nonstdin(FILE *f);
|
extern int bb_fclose_nonstdin(FILE *f);
|
||||||
extern void bb_fflush_stdout_and_exit(int retval) __attribute__ ((noreturn));
|
extern void bb_fflush_stdout_and_exit(int retval) __attribute__ ((noreturn));
|
||||||
|
|
||||||
|
#define BB_GETOPT_ERROR 0x80000000UL
|
||||||
extern const char *bb_opt_complementaly;
|
extern const char *bb_opt_complementaly;
|
||||||
extern const struct option *bb_applet_long_options;
|
extern const struct option *bb_applet_long_options;
|
||||||
extern unsigned long bb_getopt_ulflags(int argc, char **argv, const char *applet_opts, ...);
|
extern unsigned long bb_getopt_ulflags(int argc, char **argv, const char *applet_opts, ...);
|
||||||
|
@ -155,10 +155,10 @@ Special characters:
|
|||||||
if specified together. In this case you must set
|
if specified together. In this case you must set
|
||||||
bb_opt_complementaly = "b~cf:c~bf:f~bc". If two of the
|
bb_opt_complementaly = "b~cf:c~bf:f~bc". If two of the
|
||||||
mutually exclusive options are found, bb_getopt_ulflags's
|
mutually exclusive options are found, bb_getopt_ulflags's
|
||||||
return value will have the error flag set (0x80000000UL) so
|
return value will have the error flag set (BB_GETOPT_ERROR) so
|
||||||
that we can check for it:
|
that we can check for it:
|
||||||
|
|
||||||
if (flags & 0x80000000UL)
|
if (flags & BB_GETOPT_ERROR)
|
||||||
bb_show_usage();
|
bb_show_usage();
|
||||||
|
|
||||||
"*" A star after a char in bb_opt_complementaly means that the
|
"*" A star after a char in bb_opt_complementaly means that the
|
||||||
@ -280,7 +280,7 @@ bb_getopt_ulflags (int argc, char **argv, const char *applet_opts, ...)
|
|||||||
bb_show_usage ();
|
bb_show_usage ();
|
||||||
}
|
}
|
||||||
if(flags & on_off->incongruously)
|
if(flags & on_off->incongruously)
|
||||||
flags |= 0x80000000UL;
|
flags |= BB_GETOPT_ERROR;
|
||||||
flags &= ~on_off->switch_off;
|
flags &= ~on_off->switch_off;
|
||||||
flags |= on_off->switch_on;
|
flags |= on_off->switch_on;
|
||||||
if(on_off->list_flg) {
|
if(on_off->list_flg) {
|
||||||
|
@ -208,7 +208,7 @@ static const struct option hwclock_long_options[] = {
|
|||||||
bb_opt_complementaly = "r~ws:w~rs:s~wr:l~u:u~l";
|
bb_opt_complementaly = "r~ws:w~rs:s~wr:l~u:u~l";
|
||||||
opt = bb_getopt_ulflags(argc, argv, "lursw");
|
opt = bb_getopt_ulflags(argc, argv, "lursw");
|
||||||
/* Check only one mode was given */
|
/* Check only one mode was given */
|
||||||
if(opt & 0x80000000UL) {
|
if(opt & BB_GETOPT_ERROR) {
|
||||||
bb_show_usage();
|
bb_show_usage();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user