From b1d1b5cebf01893b593d2d3dc0c860a2a9392e64 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Sat, 13 Oct 2012 18:50:32 +0000 Subject: [PATCH] dns: Move getting all search domains into an own function. --- functions.dns | 45 ++++++++++++++++++++++++--------------------- 1 file changed, 24 insertions(+), 21 deletions(-) diff --git a/functions.dns b/functions.dns index 66066376..2563f9ca 100644 --- a/functions.dns +++ b/functions.dns @@ -225,29 +225,12 @@ function dns_generate_resolvconf() { print "option rotate\n" >> ${file} fi - # Add search domains. - local search_domains="$(unquote ${DNS_SEARCH_DOMAINS})" - - # Get search domains from DHCP clients, etc. - local proto - local zone - local domainname - for zone in $(zones_get_all); do - for proto in ${IP_SUPPORTED_PROTOCOLS}; do - domainname=$(routing_db_get ${zone} ${proto} domain-name) - if [ -n "${domainname}" ]; then - list_append search_domains "${domainname}" - fi - done - done - - # Sort out duplicate entries. - search_domains=$(list_unique ${search_domains}) - # Write search domains to file. print "# Search domains" >> ${file} - for domainname in ${search_domains}; do - print "search ${domainname}" + + local domain + for domain in $(dns_get_search_domains); do + print "search ${domain}" done >> ${file} print "\n# Nameservers" >> ${file} @@ -263,6 +246,26 @@ function dns_generate_resolvconf() { done >> ${file} } +function dns_get_search_domains() { + # Add search domains. + local search_domains="$(unquote ${DNS_SEARCH_DOMAINS})" + + # Get search domains from DHCP clients, etc. + local domain proto zone + + for zone in $(zones_get_all); do + for proto in ${IP_SUPPORTED_PROTOCOLS}; do + domain=$(routing_db_get ${zone} ${proto} domain-name) + isset domain || continue + + list_append search_domains "${domainname}" + done + done + + # Sort out duplicate entries. + list_unique ${search_domains} +} + function dns_server_get_zone_name_servers() { local priority proto server servers zone -- 2.47.3