summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohit Mehta <mohit.mehta@vyatta.com>2008-08-30 05:45:26 +0000
committerMohit Mehta <mohit.mehta@vyatta.com>2008-08-30 05:45:26 +0000
commit6411dbdc23e04d7c82c57d10f5488ff08217d13a (patch)
tree5150533b9201193f48f6e8475b851f362e32f85a
parenteec59c636315c09a005853649557c787246d8ece (diff)
downloadvyatta-cfg-system-6411dbdc23e04d7c82c57d10f5488ff08217d13a.tar.gz
vyatta-cfg-system-6411dbdc23e04d7c82c57d10f5488ff08217d13a.zip
move from a 'ignore-interface' model to a 'listen-on' model for DNS forwarding
-rw-r--r--scripts/dns-forwarding/vyatta-dns-forwarding.pl12
-rw-r--r--templates/service/dns/forwarding/listen-on/node.def (renamed from templates/service/dns/forwarding/ignore-interface/node.def)4
-rw-r--r--templates/service/dns/forwarding/node.def1
3 files changed, 9 insertions, 8 deletions
diff --git a/scripts/dns-forwarding/vyatta-dns-forwarding.pl b/scripts/dns-forwarding/vyatta-dns-forwarding.pl
index 73a4bbe4..c2ef968a 100644
--- a/scripts/dns-forwarding/vyatta-dns-forwarding.pl
+++ b/scripts/dns-forwarding/vyatta-dns-forwarding.pl
@@ -63,29 +63,29 @@ sub dnsforwarding_get_values {
my $output = '';
my $config = new VyattaConfig;
my $use_dnsmasq_conf = 0;
- my (@ignore_interfaces, $cache_size, @use_nameservers, $use_system_nameservers, @use_dhcp_nameservers);
+ my (@listen_interfaces, $cache_size, @use_nameservers, $use_system_nameservers, @use_dhcp_nameservers);
$config->setLevel("service dns forwarding");
if ($dhclient_script == 1){
$config->{_active_dir_base} = "/opt/vyatta/config/active/";
- @ignore_interfaces = $config->returnOrigValues("ignore-interface");
+ @listen_interfaces = $config->returnOrigValues("listen-on");
$cache_size = $config->returnOrigValue("cache-size");
@use_nameservers = $config->returnOrigValues("name-server");
$use_system_nameservers = $config->existsOrig("system");
@use_dhcp_nameservers = $config->returnOrigValues("dhcp");
} else {
- @ignore_interfaces = $config->returnValues("ignore-interface");
+ @listen_interfaces = $config->returnValues("listen-on");
$cache_size = $config->returnValue("cache-size");
@use_nameservers = $config->returnValues("name-server");
$use_system_nameservers = $config->exists("system");
@use_dhcp_nameservers = $config->returnValues("dhcp");
}
- if (@ignore_interfaces != 0) {
- foreach my $interface (@ignore_interfaces) {
- $output .= "except-interface=$interface\n";
+ if (@listen_interfaces != 0) {
+ foreach my $interface (@listen_interfaces) {
+ $output .= "interface=$interface\n";
}
}
diff --git a/templates/service/dns/forwarding/ignore-interface/node.def b/templates/service/dns/forwarding/listen-on/node.def
index 5bf20fa0..9510cebe 100644
--- a/templates/service/dns/forwarding/ignore-interface/node.def
+++ b/templates/service/dns/forwarding/listen-on/node.def
@@ -1,6 +1,6 @@
multi:
type: txt
-help: Set interface to ignore DNS queries on
+help: Set interface to listen for DNS queries
syntax:expression: exec "
intf_array=($(awk '$1 ~ /:/ { print $1 }' /proc/net/dev))
intf_array_len=${#intf_array[*]}
@@ -12,7 +12,7 @@ syntax:expression: exec "
fi
let i++
done
- echo Invalid ethernet interface [$VAR(@)]
+ echo Invalid interface [$VAR(@)]
exit 1 "
allowed: local -a array ;
diff --git a/templates/service/dns/forwarding/node.def b/templates/service/dns/forwarding/node.def
index 46dbd199..d3c32bb1 100644
--- a/templates/service/dns/forwarding/node.def
+++ b/templates/service/dns/forwarding/node.def
@@ -1,4 +1,5 @@
help: Configure DNS forwarding
+commit:expression: $VAR(./listen-on) != ""; "Atleast one interface must be configured for DNS forwarding parameter 'listen-on'"
delete:expression: "touch /tmp/dnsmasq.$PPID"
end:expression: "if [ -f \"/tmp/dnsmasq.$PPID\" ]; then \
sudo /opt/vyatta/sbin/vyatta-dns-forwarding.pl --stop-dnsforwarding \