From cfe4ae16689fc842d043ce6beba1d4ebe3e5e7b3 Mon Sep 17 00:00:00 2001 From: David Beitey Date: Fri, 21 Dec 2018 02:51:56 +0000 Subject: luci-app-ddns: check existence of nslookup util rather than making DNS request This saves a DNS request whenever the check is performed. For systems with nameservers configured in `/etc/resolv.conf`, nslookup will sent a request to those servers (eg bypassing /etc/hosts), thus taking a lot more time than necessary. For servers that are remote, this will take a *lot* longer than just checking if the nslookup util exists. This change follows in the same vein as all the other checks and just using `which` without actually invoking the util's functionality. Signed-off-by: David Beitey --- applications/luci-app-ddns/luasrc/tools/ddns.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/applications/luci-app-ddns/luasrc/tools/ddns.lua b/applications/luci-app-ddns/luasrc/tools/ddns.lua index 6f0c7f0952..2b92e3e636 100755 --- a/applications/luci-app-ddns/luasrc/tools/ddns.lua +++ b/applications/luci-app-ddns/luasrc/tools/ddns.lua @@ -103,7 +103,7 @@ function env_info(type) end local function has_nslookup() - return (SYS.call( [[$(which nslookup) localhost 2>&1 | grep -qF "(null)"]] ) ~= 0) + return (SYS.call( [[which nslookup >/dev/null 2>&1]] ) == 0) end if type == "has_bindhost" then -- cgit v1.2.3