diff options
author | John Crispin <blogic@openwrt.org> | 2013-09-17 21:45:30 +0000 |
---|---|---|
committer | John Crispin <blogic@openwrt.org> | 2013-09-17 21:45:30 +0000 |
commit | d330d9fac452b6b37ded7541c381ca58ef7a4bc8 (patch) | |
tree | fc0c6034daf9bd0276dc91d027e26be26004680b /package/network/services/ipset-dns/files/ipset-dns.init | |
parent | 021ff1b2d2678f1708c9fd86747c229f0ed227c0 (diff) | |
download | master-187ad058-d330d9fac452b6b37ded7541c381ca58ef7a4bc8.tar.gz master-187ad058-d330d9fac452b6b37ded7541c381ca58ef7a4bc8.tar.bz2 master-187ad058-d330d9fac452b6b37ded7541c381ca58ef7a4bc8.zip |
procd: convert various packages to procd style init.d scripts
Signed-off-by: John Crispin <blogic@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38023 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/network/services/ipset-dns/files/ipset-dns.init')
-rwxr-xr-x | package/network/services/ipset-dns/files/ipset-dns.init | 32 |
1 files changed, 12 insertions, 20 deletions
diff --git a/package/network/services/ipset-dns/files/ipset-dns.init b/package/network/services/ipset-dns/files/ipset-dns.init index 7b732791ea..0a76fcc4cd 100755 --- a/package/network/services/ipset-dns/files/ipset-dns.init +++ b/package/network/services/ipset-dns/files/ipset-dns.init @@ -3,9 +3,7 @@ START=61 -SERVICE_DAEMONIZE=1 -SERVICE_WRITE_PID=1 - +USE_PROCD=1 find_nameserver() { . /lib/functions/network.sh @@ -38,28 +36,22 @@ start_instance() { config_get port "$cfg" port $((PORT++)) - SERVICE_PID_FILE="/var/run/ipset-dns-$port.pid" \ - service_start /usr/sbin/ipset-dns "$ipset" "$ipset6" "$port" "$dns" + procd_open_instance + procd_set_param command /usr/sbin/ipset-dns "$ipset" "$ipset6" "$port" "$dns" + procd_set_param env NO_DAEMONIZE=1 + procd_set_param respawn + procd_close_instance +} + +service_triggers() +{ + procd_add_reload_trigger "ipset-dns" } -start() { +start_service() { PORT=53001 DEFNS="$(find_nameserver)" - # required by ipset-dns to not daemonize itself - export NO_DAEMONIZE=1 - config_load ipset-dns config_foreach start_instance ipset-dns } - -stop() { - local pid - for pid in /var/run/ipset-dns-*.pid; do - [ -f "$pid" ] || continue - SERVICE_PID_FILE="$pid" \ - service_stop /usr/sbin/ipset-dns - rm -f "$pid" - done -} - |