aboutsummaryrefslogtreecommitdiff
path: root/net/https-dns-proxy/files/etc
diff options
context:
space:
mode:
authorStan Grishin <stangri@melmac.ca>2023-10-17 09:43:34 +0000
committerStan Grishin <stangri@melmac.ca>2023-10-17 09:46:19 +0000
commit38c026250f2bdae36fbd5bba6a9d529fb7082ed1 (patch)
tree95f5412a7ed87c83d163183a6df127b874902863 /net/https-dns-proxy/files/etc
parent7ed86d2eb7a58a6ed938b08fcacb4461a2876631 (diff)
https-dns-proxy: bugfix: logging crashing instances on ath79
* finally fixes https://github.com/openwrt/packages/issues/19366 * simplify service_triggers * improve output for dnsmasq restart * improve grep/sed dependencies * remove interface hotplug Signed-off-by: Stan Grishin <stangri@melmac.ca>
Diffstat (limited to 'net/https-dns-proxy/files/etc')
-rwxr-xr-xnet/https-dns-proxy/files/etc/init.d/https-dns-proxy45
1 files changed, 16 insertions, 29 deletions
diff --git a/net/https-dns-proxy/files/etc/init.d/https-dns-proxy b/net/https-dns-proxy/files/etc/init.d/https-dns-proxy
index 6529bf3e3..58fd647c1 100755
--- a/net/https-dns-proxy/files/etc/init.d/https-dns-proxy
+++ b/net/https-dns-proxy/files/etc/init.d/https-dns-proxy
@@ -5,6 +5,8 @@
# shellcheck disable=SC2034
START=90
# shellcheck disable=SC2034
+STOP=15
+# shellcheck disable=SC2034
USE_PROCD=1
if type extra_command 1>/dev/null 2>&1; then
@@ -250,20 +252,21 @@ start_service() {
output "Updating dnsmasq config "
if uci_commit 'dhcp'; then
output_okn
- else
- output_failn
- fi
- param='dnsmasq_restart'
- fi
- if [ "$param" = 'on_hotplug' ] || [ "$param" = 'on_boot' ] || \
- [ "$param" = 'dnsmasq_restart' ] ; then
- output "Restarting dnsmasq "
- if dnsmasq_restart; then
- output_okn
+ param='on_config_update'
else
output_failn
fi
fi
+ case "$param" in
+ on_boot|on_config_update|on_hotplug)
+ output "Restarting dnsmasq ${param:+$param }"
+ if dnsmasq_restart; then
+ output_okn
+ else
+ output_failn
+ fi
+ ;;
+ esac
}
stop_service() {
@@ -291,29 +294,13 @@ stop_service() {
[ "$s" = '0' ] && output_okn || output_failn
}
-# shellcheck disable=SC1091
service_triggers() {
- local wan wan6 i
- local procd_trigger_wan6
- config_load "$packageName"
- config_get_bool procd_trigger_wan6 'config' 'procd_trigger_wan6' '0'
- . /lib/functions/network.sh
- network_flush_cache
- network_find_wan wan
- wan="${wan:-wan}"
- if [ "$procd_trigger_wan6" -ne 0 ]; then
- network_find_wan6 wan6
- wan6="${wan6:-wan6}"
- fi
- for i in "$wan" "$wan6"; do
- [ -n "$i" ] && procd_add_interface_trigger "interface.*" "$i" "/etc/init.d/${packageName}" restart
- done
- procd_add_config_trigger "config.change" "$packageName" "/etc/init.d/${packageName}" reload
+ procd_add_raw_trigger "interface.*.up" 3000 "/etc/init.d/${packageName}" restart 'on_interface_up'
+ procd_add_config_trigger "config.change" "$packageName" "/etc/init.d/${packageName}" reload 'on_config_change'
}
-
service_started() { procd_set_config_changed firewall; }
service_stopped() { procd_set_config_changed firewall; }
-restart() { procd_send_signal "$packageName"; rc_procd start_service; }
+restart() { procd_send_signal "$packageName"; rc_procd start_service "$*"; }
dnsmasq_doh_server() {
local cfg="$1" param="$2" address="${3:-127.0.0.1}" port="$4" i