From 5a387e26c2460428d4d5d9a2b2f074a31a994da1 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Fri, 8 Feb 2019 10:37:05 +0100 Subject: dhcp service example: rewrite "private network to mask" as case statement Signed-off-by: Denys Vlasenko --- examples/var_service/dhcp_if/convert2ipconf | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/examples/var_service/dhcp_if/convert2ipconf b/examples/var_service/dhcp_if/convert2ipconf index 038b1f7..31e3c7f 100755 --- a/examples/var_service/dhcp_if/convert2ipconf +++ b/examples/var_service/dhcp_if/convert2ipconf @@ -29,14 +29,19 @@ test "$ip" || exit 1 # some servers do not return subnet option. # guess it for standard private networks. if ! test "$mask"; then - if test "$ip" != "${ip#192.168.}"; then - mask=16 - elif test "$ip" != "${ip#172.16.}"; then - mask=12 - # repeat for each in 172.17. - 172.31. range? - elif test "$ip" != "${ip#10.}"; then - mask=8 - fi + case "$ip" in + 10.*) + mask=8;; + 192.168.*) + mask=16;; + #172.16-31.x.x + 172.1[6789].*) + mask=12;; + 172.2[0123456789].*) + mask=12;; + 172.3[01].*) + mask=12;; + esac fi # some servers do not return router option. -- cgit v1.1