summaryrefslogtreecommitdiff
path: root/usr.sbin/unbound
diff options
context:
space:
mode:
authorDag-Erling Smørgrav <des@FreeBSD.org>2018-05-12 18:07:53 +0000
committerDag-Erling Smørgrav <des@FreeBSD.org>2018-05-12 18:07:53 +0000
commit202ec2207826a36d84670e0596b3133419fe1792 (patch)
tree101fbaa1c9810aa836922b8861d7fa3696eab407 /usr.sbin/unbound
parentb70d78d6e87a2894b3629f39129cb07e7c0aa7bf (diff)
downloadsrc-test2-202ec2207826a36d84670e0596b3133419fe1792.tar.gz
src-test2-202ec2207826a36d84670e0596b3133419fe1792.zip
If the sole non-option command line argument is "none", remove any
pre-existing forwarder configuration and set Unbound up to recurse. PR: 222902 MFC after: 1 week
Notes
Notes: svn path=/head/; revision=333574
Diffstat (limited to 'usr.sbin/unbound')
-rwxr-xr-xusr.sbin/unbound/setup/local-unbound-setup.sh32
1 files changed, 26 insertions, 6 deletions
diff --git a/usr.sbin/unbound/setup/local-unbound-setup.sh b/usr.sbin/unbound/setup/local-unbound-setup.sh
index c1c0ece97728..16d735c1c1ce 100755
--- a/usr.sbin/unbound/setup/local-unbound-setup.sh
+++ b/usr.sbin/unbound/setup/local-unbound-setup.sh
@@ -253,6 +253,18 @@ gen_unbound_conf() {
}
#
+# Rename a file we are about to replace.
+#
+backup() {
+ local file="$1"
+ if [ -f "${file}" ] ; then
+ local bkfile="${file}.${bkext}"
+ echo "Original ${file} saved as ${bkfile}"
+ mv "${file}" "${bkfile}"
+ fi
+}
+
+#
# Replace one file with another, making a backup copy of the first,
# but only if the new file is different from the old.
#
@@ -263,9 +275,7 @@ replace() {
echo "${file} created"
mv "${newfile}" "${file}"
elif ! cmp -s "${file}" "${newfile}" ; then
- local oldfile="${file}.${bkext}"
- echo "original ${file} saved as ${oldfile}"
- mv "${file}" "${oldfile}"
+ backup "${file}"
mv "${newfile}" "${file}"
else
echo "${file} not modified"
@@ -359,13 +369,20 @@ main() {
# from resolv.conf.
#
forwarders="$@"
- if [ -z "$forwarders" ] ; then
+ case "${forwarders}" in
+ [Nn][Oo][Nn][Ee])
+ forwarders="none"
+ style=recursing
+ ;;
+ "")
echo "Extracting forwarders from ${resolv_conf}."
forwarders=$(get_nameservers <"${resolv_conf}")
style=dynamic
- else
+ ;;
+ *)
style=static
- fi
+ ;;
+ esac
#
# Generate forward.conf.
@@ -377,6 +394,9 @@ main() {
else
echo "unbound will recurse."
fi
+ elif [ "${forwarders}" = "none" ] ; then
+ echo "Forwarding disabled, unbound will recurse."
+ backup "${forward_conf}"
else
local tmp_forward_conf=$(mktemp -u "${forward_conf}.XXXXX")
gen_forward_conf ${forwarders} | unexpand >"${tmp_forward_conf}"