summaryrefslogtreecommitdiff
path: root/net/https-dns-proxy
diff options
context:
space:
mode:
authorStan Grishin <stangri@melmac.ca>2022-04-24 06:05:03 +0000
committerStan Grishin <stangri@melmac.ca>2022-04-25 01:12:33 +0000
commiteada42ae271bdec638830d2f0c15de9df0f84d75 (patch)
tree4b3bddcc80e411d61a2376483d3be28d4221ba89 /net/https-dns-proxy
parent45426fa3d14e5b1defb849a65d59d64e920be9c3 (diff)
https-dns-proxy: 2021-11-22-3: add support for Canary Domains
Fixes https://github.com/stangri/source.openwrt.melmac.net/issues/155. Background: https://support.mozilla.org/en-US/kb/canary-domain-use-application-dnsnet Signed-off-by: Stan Grishin <stangri@melmac.ca> (cherry picked from commit cb3b47be433f43838a109c326152ef86354fa8da)
Diffstat (limited to 'net/https-dns-proxy')
-rw-r--r--net/https-dns-proxy/Makefile2
-rwxr-xr-xnet/https-dns-proxy/files/https-dns-proxy.init8
2 files changed, 8 insertions, 2 deletions
diff --git a/net/https-dns-proxy/Makefile b/net/https-dns-proxy/Makefile
index b6bc6fbbe..abfb4be7a 100644
--- a/net/https-dns-proxy/Makefile
+++ b/net/https-dns-proxy/Makefile
@@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=https-dns-proxy
PKG_VERSION:=2021-11-22
-PKG_RELEASE:=2
+PKG_RELEASE:=3
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/aarond10/https_dns_proxy/
diff --git a/net/https-dns-proxy/files/https-dns-proxy.init b/net/https-dns-proxy/files/https-dns-proxy.init
index 3bf85453f..0b9a620a5 100755
--- a/net/https-dns-proxy/files/https-dns-proxy.init
+++ b/net/https-dns-proxy/files/https-dns-proxy.init
@@ -22,6 +22,7 @@ readonly _OK_='\033[0;32m\xe2\x9c\x93\033[0m'
readonly _FAIL_='\033[0;31m\xe2\x9c\x97\033[0m'
readonly PROG=/usr/sbin/https-dns-proxy
readonly DEFAULT_BOOTSTRAP='1.1.1.1,1.0.0.1,2606:4700:4700::1111,2606:4700:4700::1001,8.8.8.8,8.8.4.4,2001:4860:4860::8888,2001:4860:4860::8844'
+readonly canaryDomains='use-application-dns.net'
dnsmasqConfig=''; forceDNS=''; forceDNSPorts='';
str_contains() { [ -n "$1" ] &&[ -n "$2" ] && [ "${1//$2}" != "$1" ]; }
@@ -171,7 +172,6 @@ start_instance() {
procd_close_instance
if [ "$?" ]; then
- forceDNS=0
config_get listen_addr "$cfg" 'listen_addr' '127.0.0.1'
config_get listen_port "$cfg" 'listen_port' "$port"
if [ "$dnsmasqConfig" = '*' ]; then
@@ -188,6 +188,7 @@ start_instance() {
fi
output_ok
port="$((port+1))"
+ forceDNS=0
else
output_fail
fi
@@ -244,6 +245,11 @@ dnsmasq_doh_server() {
local cfg="$1" param="$2" address="${3:-127.0.0.1}" port="$4" i
case "$param" in
add)
+ if [ "$forceDNS" -ne 0 ]; then
+ for i in $canaryDomains; do
+ uci_add_list_if_new "dhcp.${cfg}.server" "/${i}/"
+ done
+ fi
case $address in
0.0.0.0|::ffff:0.0.0.0) address='127.0.0.1';;
::) address='::1';;