From: Sami Kerola Date: Sat, 24 May 2014 16:58:05 +0000 (+0100) Subject: uuidd: set options to be mutually exclusive X-Git-Tag: v2.25-rc1~88^2~2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e4faf6484719061f41624d135beb93ca821045c6;p=thirdparty%2Futil-linux.git uuidd: set options to be mutually exclusive --pid || --no-pid --debug || --quiet --random || --time Signed-off-by: Sami Kerola --- diff --git a/misc-utils/uuidd.c b/misc-utils/uuidd.c index 57309193fa..f72c45281e 100644 --- a/misc-utils/uuidd.c +++ b/misc-utils/uuidd.c @@ -37,6 +37,7 @@ extern int optind; #include "c.h" #include "closestream.h" #include "strutils.h" +#include "optutils.h" #ifdef HAVE_LIBSYSTEMD # include @@ -510,6 +511,13 @@ int main(int argc, char **argv) {"help", no_argument, NULL, 'h'}, {NULL, 0, NULL, 0} }; + static const ul_excl_t excl[] = { + { 'P', 'p' }, + { 'd', 'q' }, + { 'r', 't' }, + { 0 } + }; + int excl_st[ARRAY_SIZE(excl)] = UL_EXCL_STATUS_INIT; setlocale(LC_ALL, ""); bindtextdomain(PACKAGE, LOCALEDIR); @@ -519,6 +527,7 @@ int main(int argc, char **argv) while ((c = getopt_long(argc, argv, "p:s:T:krtn:PFSdqVh", longopts, NULL)) != -1) { + err_exclusive_options(c, longopts, excl, excl_st); switch (c) { case 'd': uuidd_cxt.debug = 1; @@ -576,9 +585,6 @@ int main(int argc, char **argv) } } - if (no_pid && pidfile_path_param && !uuidd_cxt.quiet) - warnx(_("Both --pid and --no-pid specified. Ignoring --no-pid.")); - if (!no_pid && !pidfile_path_param) pidfile_path = UUIDD_PIDFILE_PATH; else if (pidfile_path_param)