123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- #!/bin/sh /etc/rc.common
- ##############################################################################
- #
- # Copyright (C) 2016 Michael Hanselmann, Eric Luehrsen
- #
- ##############################################################################
- #
- # This init script is just the entry point for Unbound UCI.
- #
- ##############################################################################
- START=19
- STOP=50
- USE_PROCD=1
- PROG=/usr/sbin/unbound
- ##############################################################################
- . /usr/lib/unbound/unbound.sh
- ##############################################################################
- boot() {
- UNBOUND_BOOT=1
- start "$@"
- }
- ##############################################################################
- start_service() {
- if [ -n "$UNBOUND_BOOT" ] ; then
- # Load procd triggers (rc) and use event IFUP to really start
- return 0
- fi
- # complex UCI work
- unbound_start
- # standard procd clause
- procd_open_instance
- procd_set_param command $PROG -d -c $UNBOUND_CONFFILE
- procd_set_param respawn
- procd_close_instance
- }
- ##############################################################################
- stop_service() {
- unbound_stop
- # Wait! on restart Unbound may take time writing closure stats to syslog
- pidof $PROG && sleep 1
- }
- ##############################################################################
- service_triggers() {
- local trigger
- local legacy=$( uci_get unbound.@unbound[0].trigger )
- local triggers=$( uci_get unbound.@unbound[0].trigger_interface )
- triggers="$triggers $legacy"
- PROCD_RELOAD_DELAY=2000
- procd_add_reload_trigger "unbound"
- if [ -n "$triggers" ] ; then
- for trigger in $triggers ; do
- # due to some netifd/procd interactions with IP6, limit interfaces
- procd_add_reload_interface_trigger "$trigger"
- done
- else
- procd_add_raw_trigger "interface.*.up" 2000 /etc/init.d/unbound reload
- fi
- }
- ##############################################################################
|