summaryrefslogtreecommitdiffstats
path: root/old/bin/netmask-to-prefix
diff options
context:
space:
mode:
authortv <tv@shackspace.de>2015-07-11 19:44:12 +0200
committertv <tv@shackspace.de>2015-07-11 19:44:12 +0200
commit2bc5c58d85990e483af8fde57ed5f2442351b69c (patch)
tree94cd29e6a98f1ce6228104055d0550e318242290 /old/bin/netmask-to-prefix
parentc5fcda1390afaba71133b2ee6ac1ddd0f559ef8c (diff)
move old stuff
Diffstat (limited to 'old/bin/netmask-to-prefix')
-rwxr-xr-xold/bin/netmask-to-prefix12
1 files changed, 12 insertions, 0 deletions
diff --git a/old/bin/netmask-to-prefix b/old/bin/netmask-to-prefix
new file mode 100755
index 00000000..1c4dbeb2
--- /dev/null
+++ b/old/bin/netmask-to-prefix
@@ -0,0 +1,12 @@
+#! /bin/sh
+set -euf
+
+netmask=$1
+
+binaryNetmask=$(echo $1 | sed 's/^/obase=2;/;s/\./;/g' | bc | tr -d \\n)
+binaryPrefix=$(echo $binaryNetmask | sed -n 's/^\(1*\)0*$/\1/p')
+if ! echo $binaryPrefix | grep -q .; then
+ echo $0: bad netmask: $netmask >&2
+ exit 4
+fi
+printf %s $binaryPrefix | tr -d 0 | wc -c