ddns-scripts: cloudflare.com-v4: Fix grep patterns. 11989/head
authorZheng Luo <cherrotluo@gmail.com>
Tue, 28 Apr 2020 17:42:22 +0000 (01:42 +0800)
committercherrot <cherrotluo@gmail.com>
Wed, 29 Apr 2020 08:22:59 +0000 (16:22 +0800)
Related commit: 0080bb4b

Use `\s*` instead of ` \?` to match 0 or multiple spaces.

Signed-off-by: Zheng Luo <cherrotluo@gmail.com>
net/ddns-scripts/Makefile
net/ddns-scripts/files/update_cloudflare_com_v4.sh

index 6886b4ac217aced9fcc9eb4b77961e955a463d29..fcea36ce91f48d3f79075f45d068b5f1c5c26bcc 100755 (executable)
@@ -12,7 +12,7 @@ PKG_NAME:=ddns-scripts
 PKG_VERSION:=2.7.8
 # Release == build
 # increase on changes of services files or tld_names.dat
-PKG_RELEASE:=18
+PKG_RELEASE:=19
 
 PKG_LICENSE:=GPL-2.0
 PKG_MAINTAINER:=
index 7e663ac424d489b47d368911228018c1eef27bd5..7394187faf570785695c154597cfb6d585ec82e6 100755 (executable)
@@ -85,7 +85,7 @@ cloudflare_transfer() {
        done
 
        # check for error
-       grep -q '"success": \?true' $DATFILE || {
+       grep -q '"success":\s*true' $DATFILE || {
                write_log 4 "CloudFlare reported an error:"
                write_log 7 "$(cat $DATFILE)"           # report error
                return 1        # HTTP-Fehler
@@ -133,7 +133,7 @@ __PRGBASE="$__PRGBASE --header 'Content-Type: application/json' "
 __RUNPROG="$__PRGBASE --request GET '$__URLBASE/zones?name=$__DOMAIN'"
 cloudflare_transfer || return 1
 # extract zone id
-__ZONEID=$(grep -o '"id":"[^"]*' $DATFILE | grep -o '[^"]*$' | head -1)
+__ZONEID=$(grep -o '"id":\s*"[^"]*' $DATFILE | grep -o '[^"]*$' | head -1)
 [ -z "$__ZONEID" ] && {
        write_log 4 "Could not detect 'zone id' for domain.tld: '$__DOMAIN'"
        return 127
@@ -143,14 +143,14 @@ __ZONEID=$(grep -o '"id":"[^"]*' $DATFILE | grep -o '[^"]*$' | head -1)
 __RUNPROG="$__PRGBASE --request GET '$__URLBASE/zones/$__ZONEID/dns_records?name=$__HOST&type=$__TYPE'"
 cloudflare_transfer || return 1
 # extract record id
-__RECID=$(grep -o '"id":"[^"]*' $DATFILE | grep -o '[^"]*$' | head -1)
+__RECID=$(grep -o '"id":\s*"[^"]*' $DATFILE | grep -o '[^"]*$' | head -1)
 [ -z "$__RECID" ] && {
        write_log 4 "Could not detect 'record id' for host.domain.tld: '$__HOST'"
        return 127
 }
 
 # extract current stored IP
-__DATA=$(grep -o '"content":"[^"]*' $DATFILE | grep -o '[^"]*$' | head -1)
+__DATA=$(grep -o '"content":\s*"[^"]*' $DATFILE | grep -o '[^"]*$' | head -1)
 
 # check data
 [ $use_ipv6 -eq 0 ] \
@@ -178,7 +178,7 @@ __DATA=$(grep -o '"content":"[^"]*' $DATFILE | grep -o '[^"]*$' | head -1)
 # update is needed
 # let's build data to send
 # set proxied parameter
-__PROXIED=$(grep -o '"proxied":[^",]*' $DATFILE | grep -o '[^:]*$')
+__PROXIED=$(grep -o '"proxied":\s*[^",]*' $DATFILE | grep -o '[^:]*$')
 
 # use file to work around " needed for json
 cat > $DATFILE << EOF