Browse Source

https_dns_proxy: Added optional ipv4 resolvers

* Added optional ipv4 resolvers UCI config option
* Added logging to logd
* Refactored verbosity UCI config option
* Filtered out any address from being added to dnsmasq

Signed-off-by: Gerard Ryan <G.M0N3Y.2503@gmail.com>
lilik-openwrt-22.03
Gerard Ryan 5 years ago
parent
commit
093aa472c8
2 changed files with 24 additions and 15 deletions
  1. +4
    -0
      net/https-dns-proxy/files/https-dns-proxy.config
  2. +20
    -15
      net/https-dns-proxy/files/https-dns-proxy.init

+ 4
- 0
net/https-dns-proxy/files/https-dns-proxy.config View File

@ -8,6 +8,8 @@ config https-dns-proxy
option listen_port '5053'
option user 'nobody'
option group 'nogroup'
option ipv4_resolvers '1'
option verbosity '0' # fatal = 0, error = 1, warning = 2, info = 3, debug = 4
config https-dns-proxy
option bootstrap_dns '1.1.1.1,1.0.0.1'
@ -16,3 +18,5 @@ config https-dns-proxy
option listen_port '5054'
option user 'nobody'
option group 'nogroup'
option ipv4_resolvers '1'
option verbosity '0' # fatal = 0, error = 1, warning = 2, info = 3, debug = 4

+ 20
- 15
net/https-dns-proxy/files/https-dns-proxy.init View File

@ -33,16 +33,6 @@ append_parm() {
xappend "$switch $_loctmp"
}
append_match() {
local section="$1"
local option="$2"
local value="$3"
local match="$4"
local _loctmp
config_get_bool _loctmp "$section" "$option"
[ "$_loctmp" = "$match" ] && xappend "$value"
}
start_instance() {
local cfg="$1" param listen_addr listen_port i
@ -56,19 +46,34 @@ start_instance() {
append_parm "$cfg" 'proxy_server' '-t'
append_parm "$cfg" 'logfile' '-l'
append_bool "$cfg" 'use_http1' '-x'
append_match "$cfg" 'verbosity' '-v' '1'
append_match "$cfg" 'verbosity' '-vv' '2'
append_match "$cfg" 'verbosity' '-vvv' '3'
append_match "$cfg" 'verbosity' '-vvvv' '4'
append_bool "$cfg" 'ipv4_resolvers' '-4'
config_get verbosity "$cfg" 'verbosity' "0"
for i in $(seq 1 $verbosity); do
xappend "-v"
done
procd_open_instance
# shellcheck disable=SC2086
procd_set_param command ${PROG} -4 ${param}
procd_set_param command ${PROG} ${param}
procd_set_param stderr 1
procd_set_param stdout 1
procd_set_param respawn
procd_close_instance
config_get listen_addr "$cfg" 'listen_addr' '127.0.0.1'
config_get listen_port "$cfg" 'listen_port' "$p"
# Don't add the any address to dnsmasq
case $listen_addr in
0.0.0.0|::ffff:0.0.0.0)
listen_addr='127.0.0.1'
;;
::)
listen_addr='::1'
;;
esac
if [ "$dnsmasqConfig" = "*" ]; then
config_load 'dhcp'
config_foreach dnsmasq_add_doh_server 'dnsmasq' "${listen_addr}#${listen_port}"


Loading…
Cancel
Save