From 6411dbdc23e04d7c82c57d10f5488ff08217d13a Mon Sep 17 00:00:00 2001 From: Mohit Mehta Date: Sat, 30 Aug 2008 05:45:26 +0000 Subject: move from a 'ignore-interface' model to a 'listen-on' model for DNS forwarding --- .../service/dns/forwarding/ignore-interface/node.def | 20 -------------------- templates/service/dns/forwarding/listen-on/node.def | 20 ++++++++++++++++++++ templates/service/dns/forwarding/node.def | 1 + 3 files changed, 21 insertions(+), 20 deletions(-) delete mode 100644 templates/service/dns/forwarding/ignore-interface/node.def create mode 100644 templates/service/dns/forwarding/listen-on/node.def (limited to 'templates/service') diff --git a/templates/service/dns/forwarding/ignore-interface/node.def b/templates/service/dns/forwarding/ignore-interface/node.def deleted file mode 100644 index 5bf20fa0..00000000 --- a/templates/service/dns/forwarding/ignore-interface/node.def +++ /dev/null @@ -1,20 +0,0 @@ -multi: -type: txt -help: Set interface to ignore DNS queries on -syntax:expression: exec " - intf_array=($(awk '$1 ~ /:/ { print $1 }' /proc/net/dev)) - intf_array_len=${#intf_array[*]} - i=0 - while [ $i -lt $intf_array_len ]; do - temp=${intf_array[$i]%:*} - if [ \"$temp\" == \"$VAR(@)\" ] ; then - exit 0 - fi - let i++ - done - echo Invalid ethernet interface [$VAR(@)] - exit 1 " - -allowed: local -a array ; - array=($(awk '$1 ~ /:/ { print $1 }' /proc/net/dev)); - echo -n ${array[@]%:*} diff --git a/templates/service/dns/forwarding/listen-on/node.def b/templates/service/dns/forwarding/listen-on/node.def new file mode 100644 index 00000000..9510cebe --- /dev/null +++ b/templates/service/dns/forwarding/listen-on/node.def @@ -0,0 +1,20 @@ +multi: +type: txt +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[*]} + i=0 + while [ $i -lt $intf_array_len ]; do + temp=${intf_array[$i]%:*} + if [ \"$temp\" == \"$VAR(@)\" ] ; then + exit 0 + fi + let i++ + done + echo Invalid interface [$VAR(@)] + exit 1 " + +allowed: local -a array ; + array=($(awk '$1 ~ /:/ { print $1 }' /proc/net/dev)); + echo -n ${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 \ -- cgit v1.2.3