** Description changed:
[Impact]
- * Not all Uppercase signal names are accepted by killall in the new
- version (INT + ILL + VTALRM will not work)
+ * Not all Uppercase signal names are accepted by killall in the new
+ version (INT + ILL + VTALRM will not work)
- * by that the man page refers to things no more working and old scripts
- might break.
+ * by that the man page refers to things no more working and old scripts
+ might break.
[Test Case]
- * run this and check if all signals were accepted by the commandline of
killall
+ * run this and check if all signals were accepted by the commandline of
killall
#!/bin/bash
- #set -x
TNAME="uninitialized"
testkillall () {
- local tsig=${1}
- /tmp/${TNAME} /dev/urandom &
- local tpid=$!;
- echo "TEST -${tsig}";
- killall -${tsig} "${TNAME}"
- kill -9 "${tpid}" 2>/dev/null;
- kill -9 "${TNAME}" 2>/dev/null;
+ local tsig=${1}
+ /tmp/${TNAME} /dev/urandom &
+ local tpid=$!;
+ echo "TEST -${tsig}";
+ killall -${tsig} "${TNAME}"
+ kill -9 "${tpid}" 2>/dev/null;
+ kill -9 "${TNAME}" 2>/dev/null;
}
for sig in $(killall -l | xargs); do
- TNAME="test${sig}"
- cp /usr/bin/md5sum "/tmp/${TNAME}"
- testkillall "$(echo ${sig} | tr '[:lower:]' '[:upper:]')"
- testkillall "SIG$(echo ${sig} | tr '[:lower:]' '[:upper:]')"
- #testkillall "$(echo ${sig} | tr '[:upper:]' '[:lower:]')"
- rm -f "/tmp/${TNAME}"
- sync
+ TNAME="test${sig}"
+ cp /usr/bin/md5sum "/tmp/${TNAME}"
+ testkillall "$(echo ${sig} | tr '[:lower:]' '[:upper:]')"
+ testkillall "SIG$(echo ${sig} | tr '[:lower:]' '[:upper:]')"
+ rm -f "/tmp/${TNAME}"
+ sync
done
-
[Regression Potential]
- * This reworks more of the argument parsing than one would like, but this
- is due to one of such reworks being the breaking change in the former
- version and a more minimal fix is hard to come up with.
- Due to that obviously there could be "new" issues added to the argument
- parsing. At least in this case we checked all signals and they worked
- fine. Furthermore the new code also added a bunch of tests which work
- fine since adding that.
+ * This reworks more of the argument parsing than one would like, but this
+ is due to one of such reworks being the breaking change in the former
+ version and a more minimal fix is hard to come up with.
+ Due to that obviously there could be "new" issues added to the argument
+ parsing. At least in this case we checked all signals and they worked
+ fine. Furthermore the new code also added a bunch of tests which work
+ fine since adding that.
[Other Info]
- * This is a regression as of bionic.
+ * This is a regression as of bionic.
---
-
[Original Description]
Newer versions of killall (Ubuntu 18.04+) display usage when the signal
is passed like:
killall -INT <name>
and instead require it to be passed as:
killall -int <name>
In previous versions from Ubuntu 14.04 and 16.04, this doesn't happen.
Is this a bug or a feature change? If so perhaps it should be noted in
the usage information? The man page suggests capitals with "-SIGNAL".
but that doesn't work any more.
Hamish
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1806060
Title:
Newer versions of killall (Ubuntu 18.04+) fail when signal specified
in capitals
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/psmisc/+bug/1806060/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs