diff --git a/DNSCrypt-Preference-Pane/DNSCrypt/extra/usr/scripts/common.inc b/DNSCrypt-Preference-Pane/DNSCrypt/extra/usr/scripts/common.inc index e577f0b..a3fdc49 100644 --- a/DNSCrypt-Preference-Pane/DNSCrypt/extra/usr/scripts/common.inc +++ b/DNSCrypt-Preference-Pane/DNSCrypt/extra/usr/scripts/common.inc @@ -17,6 +17,7 @@ FALLBACK_FILE="${CONTROL_DIR}/fallback" HANDLERS_LOCK_FILE="/var/run/dnscrypt-handlers.lock" DOMAINS_EXCEPTIONS_FILE="${CONTROL_DIR}/domains-exceptions" DNSCRYPT_PROXY_PLUGINS_FILE="${CONTROL_DIR}/plugins" +STATIC_RESOLVERS_FILE="${CONTROL_DIR}/static-resolvers" INTERFACE_UNBOUND="127.0.0.53" INTERFACE_UNBOUND_MASK="24" diff --git a/DNSCrypt-Preference-Pane/DNSCrypt/extra/usr/scripts/set-dns-to-dhcp.sh b/DNSCrypt-Preference-Pane/DNSCrypt/extra/usr/scripts/set-dns-to-dhcp.sh index 2659da3..fc747e5 100755 --- a/DNSCrypt-Preference-Pane/DNSCrypt/extra/usr/scripts/set-dns-to-dhcp.sh +++ b/DNSCrypt-Preference-Pane/DNSCrypt/extra/usr/scripts/set-dns-to-dhcp.sh @@ -4,12 +4,22 @@ servers='empty' +if [ -r "$STATIC_RESOLVERS_FILE" ]; then + servers='' + while read server; do + case "$server" in + [0-9a-fA-F:.]*) servers="${servers} ${server}" ;; + esac + done < "$STATIC_RESOLVERS_FILE" + [ -z "$servers" ] && servers='empty' +fi + [ -e "$INSECURE_OPENDNS_FILE" ] && servers='208.67.220.220' [ -e "$FAMILYSHIELD_FILE" ] && servers='208.67.220.123' exec networksetup -listallnetworkservices 2>/dev/null | \ fgrep -v '*' | while read x ; do - networksetup -setdnsservers "$x" "$servers" + networksetup -setdnsservers "$x" $servers done dscacheutil -flushcache 2> /dev/null killall -HUP mDNSResponder 2> /dev/null