summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2019-07-22 18:29:52 +0200
committerGitHub <noreply@github.com>2019-07-22 18:29:52 +0200
commitcc79d85e92f35b70cd3ab903a31e1a958408e662 (patch)
tree7aedc2cc71117ca90703e7dd1e058bccb6f69b66
parent670fb0b48360c856f0054fa16fc849fc4f2dbf07 (diff)
parentcdfa3f0c76f733b34cae75a277ba621716b33f2f (diff)
downloadsystemd-cc79d85e92f35b70cd3ab903a31e1a958408e662.tar.gz
Merge pull request #13133 from keszybz/pstore-return-value
pstore: refuse to run if arguments are specified
-rw-r--r--src/pstore/pstore.c4
-rwxr-xr-xtools/meson-check-help.sh10
2 files changed, 12 insertions, 2 deletions
diff --git a/src/pstore/pstore.c b/src/pstore/pstore.c
index 4bb1293e15..df3efb3c8d 100644
--- a/src/pstore/pstore.c
+++ b/src/pstore/pstore.c
@@ -359,6 +359,10 @@ static int run(int argc, char *argv[]) {
log_setup_service();
+ if (argc > 1)
+ return log_error_errno(SYNTHETIC_ERRNO(EINVAL),
+ "This program takes no arguments.");
+
/* Ignore all parse errors */
(void) parse_config();
diff --git a/tools/meson-check-help.sh b/tools/meson-check-help.sh
index a0e304ca9c..efe7ed4e56 100755
--- a/tools/meson-check-help.sh
+++ b/tools/meson-check-help.sh
@@ -10,14 +10,20 @@ if "$1" --help | grep -v 'default:' | grep -E -q '.{80}.'; then
exit 1
fi
+# --help prints something. Also catches case where args are ignored.
+if ! "$1" --help | grep -q .; then
+ echo "$(basename "$1") --help output is empty."
+ exit 2
+fi
+
# no --help output to stdout
if "$1" --help 2>&1 1>/dev/null | grep .; then
echo "$(basename "$1") --help prints to stderr"
- exit 2
+ exit 3
fi
# error output to stderr
if ! "$1" --no-such-parameter 2>&1 1>/dev/null | grep -q .; then
echo "$(basename "$1") with an unknown parameter does not print to stderr"
- exit 3
+ exit 4
fi