Message ID | 1514878118-21009-3-git-send-email-christian.ehrhardt@canonical.com |
---|---|
State | Not Applicable, archived |
Delegated to: | David Miller |
Headers | show |
Series | tests: fix issues in autopkgtest environment | expand |
diff --git a/testsuite/lib/generic.sh b/testsuite/lib/generic.sh index 3645ff5..8cef20f 100644 --- a/testsuite/lib/generic.sh +++ b/testsuite/lib/generic.sh @@ -87,7 +87,11 @@ ts_qdisc_available() rand_dev() { - echo "dev-$(head -c 250 /dev/urandom | tr -dc '[:alpha:]' | head -c 6)" + rnd="" + while [ ${#rnd} -ne 6 ]; do + rnd="$(head -c 250 /dev/urandom | tr -dc '[:alpha:]' | head -c 6)" + done + echo "dev-$rnd" } pr_failed()
The change to limit the read size from /dev/urandom is a tradeoff. Reading too much can trigger an issue, but so it could if the suggested 250 random chars would not contain enough [:alpha:] chars. If they contain: a) >=6 all is ok b) [1-5] the devname would be shorter than expected (non fatal). c) 0 things would break In loops of hundreds of thousands it always was (a) for my, but since if occuring in a test it might be hard to track what happened avoid this issue by retrying on the length condition. Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com> --- testsuite/lib/generic.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)