- local dnsserver = s["dns_server"] or ""
- local force_ipversion = tonumber(s["force_ipversion"] or 0)
- local force_dnstcp = tonumber(s["force_dnstcp"] or 0)
- local is_glue = tonumber(s["is_glue"] or 0)
- local command = [[/usr/lib/ddns/dynamic_dns_lucihelper.sh]]
- command = command .. [[ get_registered_ip ]] .. lookup_host .. [[ ]] .. use_ipv6 ..
- [[ ]] .. force_ipversion .. [[ ]] .. force_dnstcp ..
- [[ ]] .. is_glue .. [[ ]] .. dnsserver
- local reg_ip = SYS.exec(command)
+ local chk_sec = DDNS.calc_seconds(
+ tonumber(s["check_interval"]) or 10,
+ s["check_unit"] or "minutes" )
+ local reg_ip = DDNS.get_regip(section, chk_sec)
+ if reg_ip == "NOFILE" then
+ local dnsserver = s["dns_server"] or ""
+ local force_ipversion = tonumber(s["force_ipversion"] or 0)
+ local force_dnstcp = tonumber(s["force_dnstcp"] or 0)
+ local is_glue = tonumber(s["is_glue"] or 0)
+ local command = luci_helper .. [[ -]]
+ if (use_ipv6 == 1) then command = command .. [[6]] end
+ if (force_ipversion == 1) then command = command .. [[f]] end
+ if (force_dnstcp == 1) then command = command .. [[t]] end
+ if (is_glue == 1) then command = command .. [[g]] end
+ command = command .. [[l ]] .. lookup_host
+ command = command .. [[ -S ]] .. section
+ if (#dnsserver > 0) then command = command .. [[ -d ]] .. dnsserver end
+ command = command .. [[ -- get_registered_ip]]
+ reg_ip = SYS.exec(command)
+ end