Fix for too short IDs due to hexdump output missing leading or trailing zeroes

This commit is contained in:
Michael Boelen 2020-07-06 09:26:27 +02:00
parent 7b6624f85d
commit 6eae35e564
No known key found for this signature in database
GPG Key ID: 26141F77A09D7F04
1 changed files with 4 additions and 2 deletions

View File

@ -51,8 +51,10 @@ if [ $# -gt 0 ]; then
;;
*)
# xxd does not exist on FreeBSD
HOSTID=$(head -c20 < /dev/urandom | hexdump -ve '"%.2x"')
HOSTID2=$(head -c32 < /dev/urandom | hexdump -ve '"%.2x"')
# Note: hexdump may omit leading or trailing zeroes.
# Take 100 characters as input, turn to hex, then take first 40/64.
HOSTID=$(head -c100 < /dev/urandom | hexdump -ve '"%.2x"' | head -c40)
HOSTID2=$(head -c100 < /dev/urandom | hexdump -ve '"%.2x"' | head -c64)
;;
esac