From: Daniel Molkentin Date: Tue, 25 Apr 2017 13:25:20 +0000 (+0200) Subject: mkinitrd-suse.sh: Fix prefix calculation X-Git-Tag: 046~69^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F222%2Fhead;p=thirdparty%2Fdracut.git mkinitrd-suse.sh: Fix prefix calculation The previous algorithm was incorrect and would return incorrect results e.g. for a /20 mask. Also gets rid of an undocumented depencency on bc(1). Reference: bsc#1035743 --- diff --git a/mkinitrd-suse.sh b/mkinitrd-suse.sh index bc49d731f..d9de81b98 100755 --- a/mkinitrd-suse.sh +++ b/mkinitrd-suse.sh @@ -104,7 +104,7 @@ calc_netmask() { local prefix=$1 [ -z "$prefix" ] && return - mask=$(echo "(2 ^ 32) - (2 ^ $prefix)" | bc -l) + mask=$(( 0xffffffff << (32 - $prefix) )) byte1=$(( mask >> 24 )) byte2=$(( mask >> 16 )) byte3=$(( mask >> 8 ))