[Patch v1 1/3] test-lib-functions.sh: add generate_zero_bytes function
- From
- randall.s.becker@rogers.com <randall.s.becker@rogers.com>
- Date
- Feb 9, 2019, 18:59 UTC
- Message-ID
- <20190209185930.5256-2-randall.s.becker@rogers.com>
- In-Reply-To
- <20190209185930.5256-1-randall.s.becker@rogers.com>
From: "Randall S. Becker" <rsbecker@nexbridge.com>
t5318 and t5562 used /dev/zero, which is not portable. This function provides both a fixed block of NUL bytes and an infinite stream of NULs.
Signed-off-by: Randall S. Becker <rsbecker@nexbridge.com> --- t/test-lib-functions.sh | 13 +++++++++++++ 1 file changed, 13 insertions(+)
diff --git a/t/test-lib-functions.sh b/t/test-lib-functions.sh index 92cf8f812..bbf68712c 100644 --- a/t/test-lib-functions.sh +++ b/t/test-lib-functions.sh @@ -116,6 +116,19 @@ remove_cr () { tr '\015' Q | sed -e 's/Q$//' } +# Generate an output of $1 bytes of all zeroes (NULs, not ASCII zeroes). +# If $1 is 'infinity', output forever or until the receiving pipe stops reading, +# whichever comes first. +generate_zero_bytes () { + perl -e 'if ($ARGV[0] == "infinity") { + while (-1) { + print "\0" + } + } else { + print "\0" x $ARGV[0] + }' "$@" +} + # In some bourne shell implementations, the "unset" builtin returns # nonzero status when a variable to be unset was not set in the first # place.
-- 2.12.3