PKG_NAME:=unbound
PKG_VERSION:=1.6.1
-PKG_RELEASE:=3
+PKG_RELEASE:=4
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=LICENSE
$(INSTALL_DATA) ./files/unbound_srv.conf $(1)/etc/unbound/unbound_srv.conf
$(INSTALL_DIR) $(1)/etc/config
$(INSTALL_DATA) ./files/unbound.uci $(1)/etc/config/unbound
- $(INSTALL_DIR) $(1)/etc/hotplug.d/iface
- $(INSTALL_BIN) ./files/unbound.iface $(1)/etc/hotplug.d/iface/25-unbound
$(INSTALL_DIR) $(1)/etc/hotplug.d/ntp
$(INSTALL_BIN) ./files/unbound.ntpd $(1)/etc/hotplug.d/ntp/25-unbound
$(INSTALL_DIR) $(1)/etc/init.d
+++ /dev/null
-#!/bin/sh
-##############################################################################
-#
-# Copyright (C) 2016 Eric Luehrsen
-#
-##############################################################################
-#
-# "Restart" Unbound on hotplug interface up:
-# - Clean rebind of unbound to new interfaces
-# - Some of Unbound conf options to not reload run time
-# - Unbound can grow a bit so this will shrink it back
-#
-##############################################################################
-
-if [ "$ACTION" = ifup ] && /etc/init.d/unbound enabled ; then
- /etc/init.d/unbound restart
-fi
-
-##############################################################################
-
##############################################################################
start_service() {
+ # WAIT! Unbound often takes its time writing closure stats to syslog
+ pidof $PROG && sleep 1
+
# complex UCI work
unbound_start
##############################################################################
service_triggers() {
- procd_add_reload_trigger "dhcp" "network" "unbound"
+ procd_add_reload_trigger "unbound"
+ procd_add_raw_trigger "interface.*" 2000 /etc/init.d/unbound restart
}
##############################################################################
local resolvsym=0
local dhcp_origin=$( uci get dhcp.@odhcpd[0].leasefile )
local dhcp_dir=$( dirname "$dhcp_origin" )
+ local filestuff
if [ ! -x /usr/sbin/dnsmasq -o ! -x /etc/init.d/dnsmasq ] ; then
if [ -f $UNBOUND_KEYFILE ] ; then
- # Lets not lose RFC 5011 tracking if we don't have to
- cp -p $UNBOUND_KEYFILE $UNBOUND_KEYFILE.keep
+ filestuff=$( cat $UNBOUND_KEYFILE )
+
+
+ case "$filestuff" in
+ *"state=2 [ VALID ]"*)
+ # Lets not lose RFC 5011 tracking if we don't have to
+ cp -p $UNBOUND_KEYFILE $UNBOUND_KEYFILE.keep
+ ;;
+ esac
fi
rm -f /tmp/resolv.conf
ln -s /tmp/resolv.conf.auto /tmp/resolv.conf
fi
-
-
- # Unbound has a log dump which takes time; don't overlap a "restart"
- sleep 1
}
##############################################################################