summaryrefslogtreecommitdiffstats
path: root/contrib/openresolv/unbound.in
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/openresolv/unbound.in')
-rw-r--r--contrib/openresolv/unbound.in19
1 files changed, 15 insertions, 4 deletions
diff --git a/contrib/openresolv/unbound.in b/contrib/openresolv/unbound.in
index a803615..46d4524 100644
--- a/contrib/openresolv/unbound.in
+++ b/contrib/openresolv/unbound.in
@@ -1,5 +1,5 @@
#!/bin/sh
-# Copyright (c) 2009-2014 Roy Marples
+# Copyright (c) 2009-2016 Roy Marples
# All rights reserved
# unbound subscriber for resolvconf
@@ -37,7 +37,6 @@ NL="
: ${unbound_pid:=/var/run/unbound.pid}
: ${unbound_service:=unbound}
-: ${unbound_restart:=@RESTARTCMD ${unbound_service}@}
newconf="# Generated by resolvconf$NL"
for d in $DOMAINS; do
@@ -71,6 +70,18 @@ else
@SBINDIR@/resolvconf -D "$unbound_conf"
fi
+restart_unbound()
+{
+ if [ -n "$unbound_restart" ]; then
+ eval $unbound_restart
+ elif [ -n "$RESTARTCMD" ]; then
+ set -- ${unbound_service}
+ eval $RESTARTCMD
+ else
+ @SBINDIR@/resolvconf -r ${unbound_service}
+ fi
+}
+
if [ ! -f "$unbound_conf" ] || \
[ "$(cat "$unbound_conf")" != "$(printf %s "$newconf")" ]
then
@@ -78,9 +89,9 @@ then
# If we can't sent a HUP then force a restart
if [ -s "$unbound_pid" ]; then
if ! kill -HUP $(cat "$unbound_pid") 2>/dev/null; then
- eval $unbound_restart
+ restart_unbound
fi
else
- eval $unbound_restart
+ restart_unbound
fi
fi
OpenPOWER on IntegriCloud