From: Qian Suyao Date: Thu, 10 Jul 2025 15:05:58 +0000 (+0800) Subject: ddns-scripts: fix getting IP address via web in get_current_ip() X-Git-Url: http://git.99rst.org/?a=commitdiff_plain;h=65a9d7d45067a11b257b2752300c37adaddb5a6a;p=openwrt-packages.git ddns-scripts: fix getting IP address via web in get_current_ip() Add back the regex searching for valid IP address when getting IP address via web. Fixes: 9cdd1a1660b6 ("ddns-scripts: refactor get_current_ip()") Signed-off-by: Qian Suyao --- diff --git a/net/ddns-scripts/Makefile b/net/ddns-scripts/Makefile index fd7973540..4e306b28b 100644 --- a/net/ddns-scripts/Makefile +++ b/net/ddns-scripts/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ddns-scripts PKG_VERSION:=2.8.2 -PKG_RELEASE:=76 +PKG_RELEASE:=77 PKG_LICENSE:=GPL-2.0 diff --git a/net/ddns-scripts/files/usr/lib/ddns/dynamic_dns_functions.sh b/net/ddns-scripts/files/usr/lib/ddns/dynamic_dns_functions.sh index 9f08e290c..5afa5547c 100644 --- a/net/ddns-scripts/files/usr/lib/ddns/dynamic_dns_functions.sh +++ b/net/ddns-scripts/files/usr/lib/ddns/dynamic_dns_functions.sh @@ -936,7 +936,8 @@ get_current_ip () { [ -z "$ip_url" ] && { write_log 12 "get_current_ip: 'ip_url' not set for source 'web'"; return 2; } do_transfer "$ip_url" # bug: do_transfer does not output to DATFILE - read -r data < "$DATFILE" + [ $use_ipv6 -eq 0 ] && data=$(grep -m 1 -o "$IPV4_REGEX" "$DATFILE") + [ $use_ipv6 -eq 1 ] && data=$(grep -m 1 -o "$IPV6_REGEX" "$DATFILE") [ -n "$data" ] && write_log 7 "Current IP '$data' detected via web at '$ip_url'" ;; *)