From: Sami Kerola Date: Mon, 7 Apr 2014 21:32:44 +0000 (+0100) Subject: kill: make options --pid and --queue mutually exclusive X-Git-Tag: v2.25-rc1~244^2~9 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fe6b5e321f9e35d28ca0fa518ccaafbd9f641ee1;p=thirdparty%2Futil-linux.git kill: make options --pid and --queue mutually exclusive Signed-off-by: Sami Kerola --- diff --git a/misc-utils/kill.c b/misc-utils/kill.c index d461b36a66..e678661873 100644 --- a/misc-utils/kill.c +++ b/misc-utils/kill.c @@ -381,6 +381,10 @@ static char **parse_arguments(int argc, char **argv, struct kill_control *ctl) ctl->do_pid = 1; if (ctl->do_kill) errx(EXIT_FAILURE, _("%s and %s are mutually exclusive"), "--pid", "--signal"); +#ifdef HAVE_SIGQUEUE + if (ctl->use_sigval) + errx(EXIT_FAILURE, _("%s and %s are mutually exclusive"), "--pid", "--queue"); +#endif continue; } if (!strcmp(arg, "-s") || !strcmp(arg, "--signal")) { @@ -399,6 +403,8 @@ static char **parse_arguments(int argc, char **argv, struct kill_control *ctl) if (!strcmp(arg, "-q") || !strcmp(arg, "--queue")) { if (argc < 2) errx(EXIT_FAILURE, _("option '%s' requires an argument"), arg); + if (ctl->do_pid) + errx(EXIT_FAILURE, _("%s and %s are mutually exclusive"), "--pid", "--queue"); argc--, argv++; arg = *argv; if ((ctl->numsig = arg_to_signum(arg, 0)) < 0)