summaryrefslogtreecommitdiff
path: root/tests/dd
diff options
context:
space:
mode:
authorPádraig Brady <P@draigBrady.com>2016-11-04 16:55:58 +0000
committerPádraig Brady <P@draigBrady.com>2016-11-04 20:38:32 +0000
commitc6656eed6ae9536812012a1b0d0b31ec960acf23 (patch)
treef2cbda8c7150d028de4cb2ccdacec58c82919888 /tests/dd
parentd0ddfadfb27def2861f35b1a45190a4c1780b257 (diff)
downloadcoreutils-c6656eed6ae9536812012a1b0d0b31ec960acf23.tar.xz
dd: warn about counts specified with confusing 0x prefix
* src/dd.c (parse_integer): Suggest to use "00x" instead of "0x", which is significant for the "count", "seek", and "skip" operands. * tests/dd/misc.sh: Add a test case. Fixes http://bugs.gnu.org/24874
Diffstat (limited to 'tests/dd')
-rwxr-xr-xtests/dd/misc.sh10
1 files changed, 10 insertions, 0 deletions
diff --git a/tests/dd/misc.sh b/tests/dd/misc.sh
index 2c24b5087..094fc5375 100755
--- a/tests/dd/misc.sh
+++ b/tests/dd/misc.sh
@@ -107,4 +107,14 @@ compare err_ok err || fail=1
test $fail -eq 0 && fail=$warn
+# Check a warning is issued for ambiguous 0x... numbers
+dd if=/dev/null count=0x1 seek=0x1 skip=0x1 status=none 2>err || fail=1
+cat <<\EOF >exp
+dd: warning: '0x' is a zero multiplier; use '00x' if that is intended
+dd: warning: '0x' is a zero multiplier; use '00x' if that is intended
+dd: warning: '0x' is a zero multiplier; use '00x' if that is intended
+EOF
+compare exp err || fail=1
+
+
Exit $fail