diff options
author | Dag-Erling Smørgrav <des@FreeBSD.org> | 2018-05-12 18:07:53 +0000 |
---|---|---|
committer | Dag-Erling Smørgrav <des@FreeBSD.org> | 2018-05-12 18:07:53 +0000 |
commit | 202ec2207826a36d84670e0596b3133419fe1792 (patch) | |
tree | 101fbaa1c9810aa836922b8861d7fa3696eab407 /usr.sbin/unbound | |
parent | b70d78d6e87a2894b3629f39129cb07e7c0aa7bf (diff) | |
download | src-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-x | usr.sbin/unbound/setup/local-unbound-setup.sh | 32 |
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}" |