ddns-scripts: send_update() detection private IPv4 383/head
authorChristian Schoenebeck <christian.schoenebeck@gmail.com>
Tue, 30 Sep 2014 06:22:21 +0000 (08:22 +0200)
committerChristian Schoenebeck <christian.schoenebeck@gmail.com>
Tue, 30 Sep 2014 06:22:21 +0000 (08:22 +0200)
correction of excluding private IPv4 in send_update() function.
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
net/ddns-scripts/files/usr/lib/ddns/dynamic_dns_functions.sh

index 778735beaa6fb438a908f6ec3cbe01c2ff3c7cda..10721ac1fc5a0857526d005ab4bd52ce89191f91 100644 (file)
@@ -552,9 +552,9 @@ send_update() {
        # $1    # IP to set at DDNS service provider
        local __IP __URL __ANSWER __ERR
 
-       # verify given IP
-       [ $use_ipv6 -eq 0 ] && __IP=$(echo $1 | grep -v -E "(^0|^10\.|^127|^172|^192)") # no private IPv4's
-       [ $use_ipv6 -eq 1 ] && __IP=$(echo $1 | grep "^[0-9a-eA-E]")    # no IPv6 addr starting with fxxx of with ":"
+       # verify given IP / no private IPv4's / no IPv6 addr starting with fxxx of with ":"
+       [ $use_ipv6 -eq 0 ] && __IP=$(echo $1 | grep -v -E "(^0|^10\.|^127|^172\.1[6-9]\.|^172\.2[0-9]\.|^172\.3[0-1]\.|^192\.168)")
+       [ $use_ipv6 -eq 1 ] && __IP=$(echo $1 | grep "^[0-9a-eA-E]")
        [ -z "$__IP" ] && critical_error "Invalid or no IP '$1' given"
 
        # do replaces in URL