Author: des
Date: Sat May 12 18:07:53 2018
New Revision: 333574
URL: https://svnweb.freebsd.org/changeset/base/333574

Log:
  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

Modified:
  head/usr.sbin/unbound/setup/local-unbound-setup.sh

Modified: head/usr.sbin/unbound/setup/local-unbound-setup.sh
==============================================================================
--- head/usr.sbin/unbound/setup/local-unbound-setup.sh  Sat May 12 17:10:36 
2018        (r333573)
+++ head/usr.sbin/unbound/setup/local-unbound-setup.sh  Sat May 12 18:07:53 
2018        (r333574)
@@ -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}"
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to