diff options
author | Pádraig Brady <P@draigBrady.com> | 2016-10-04 13:43:32 +0100 |
---|---|---|
committer | Pádraig Brady <P@draigBrady.com> | 2016-10-04 23:35:59 +0100 |
commit | 0e060d9fef64727aa2d41f00f8217c61166bb2e0 (patch) | |
tree | fae045097daf523f4071f18ab633666653dc27ab /tests | |
parent | f04daf570b91286d47a80074cf4a6a63c4309dc0 (diff) | |
download | coreutils-0e060d9fef64727aa2d41f00f8217c61166bb2e0.tar.xz |
rm: disallow --n alias for --no-preserve-root
* src/rm.c (main): Ensure the full --no-preserve-root
option is specified, rather than allowing --n etc.
* tests/rm/r-root.sh: Add a test case.
* NEWS: Mention the change in behavior.
Improved by Jim Meyering.
Fixes http://bugs.gnu.org/24604
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/rm/r-root.sh | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/tests/rm/r-root.sh b/tests/rm/r-root.sh index b98db141b..3b7837fe0 100755 --- a/tests/rm/r-root.sh +++ b/tests/rm/r-root.sh @@ -211,6 +211,15 @@ for opts in \ done #------------------------------------------------------------------------------- +# Exercise with --no-preserve to ensure shortened equivalent is not allowed. +cat <<EOD > exp_opt || framework_failure_ +rm: you may not abbreviate the --no-preserve-root option +EOD +returns_ 1 exercise_rm_r_root --no-preserve / || fail=1 +compare exp_opt err || fail=1 +test -f x && fail=1 + +#------------------------------------------------------------------------------- # Exercise "rm -r file1 / file2". # Expect a non-Zero exit status representing failure to remove "/", # yet 'file1' and 'file2' should be removed. |