summaryrefslogtreecommitdiffstats
path: root/src/etc/inc/services.inc
diff options
context:
space:
mode:
authorjim-p <jimp@pfsense.org>2017-01-05 19:17:17 -0500
committerjim-p <jimp@pfsense.org>2017-01-05 19:17:17 -0500
commit1794ecbb8b37fc97bd1d2fe6ab7ecc19d87a9a68 (patch)
tree400b636d55890aedcfcff6e73950d1b9dab93b95 /src/etc/inc/services.inc
parent80e7011fddd29a387c4c84b68c8c49dce4494729 (diff)
downloadpfsense-1794ecbb8b37fc97bd1d2fe6ab7ecc19d87a9a68.zip
pfsense-1794ecbb8b37fc97bd1d2fe6ab7ecc19d87a9a68.tar.gz
Handle the RA Search Domain List when writing out the RADVD config. Fixes #7081
Diffstat (limited to 'src/etc/inc/services.inc')
-rw-r--r--src/etc/inc/services.inc16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/etc/inc/services.inc b/src/etc/inc/services.inc
index 23edf62..7b02bbd 100644
--- a/src/etc/inc/services.inc
+++ b/src/etc/inc/services.inc
@@ -263,10 +263,22 @@ function services_radvd_configure($blacklist = array()) {
$radvdconf .= "\tRDNSS {$dnsstring} { };\n";
}
}
+
+ $searchlist = array();
+ $domainsearchlist = explode(';', $dhcpv6ifconf['radomainsearchlist']);
+ foreach ($domainsearchlist as $sd) {
+ $sd = trim($sd);
+ if (is_hostname($sd)) {
+ $searchlist[] = $sd;
+ }
+ }
+ if (count($searchlist) > 0) {
+ $searchliststring = trim(implode(" ", $searchlist));
+ }
if (!empty($dhcpv6ifconf['domain'])) {
- $radvdconf .= "\tDNSSL {$dhcpv6ifconf['domain']} { };\n";
+ $radvdconf .= "\tDNSSL {$dhcpv6ifconf['domain']} {$searchliststring} { };\n";
} elseif (!empty($config['system']['domain'])) {
- $radvdconf .= "\tDNSSL {$config['system']['domain']} { };\n";
+ $radvdconf .= "\tDNSSL {$config['system']['domain']} {$searchliststring} { };\n";
}
$radvdconf .= "};\n";
}
OpenPOWER on IntegriCloud