summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/dnsmasq/files/dnsmasq.init14
1 files changed, 10 insertions, 4 deletions
diff --git a/package/dnsmasq/files/dnsmasq.init b/package/dnsmasq/files/dnsmasq.init
index c39e58417..cd5697c77 100644
--- a/package/dnsmasq/files/dnsmasq.init
+++ b/package/dnsmasq/files/dnsmasq.init
@@ -2,6 +2,7 @@
# Copyright (C) 2007 OpenWrt.org
START=60
+DNS_SERVERS=""
dhcp_calc() {
local ip="$1"
@@ -173,6 +174,11 @@ dhcp_add() {
config_get ifname "$net" ifname
[ -n "$ifname" ] || return 0
+ config_get dnsserver "$net" dns
+ [ -n "$dnsserver" ] && {
+ DNS_SERVERS="$DNS_SERVERS $dnsserver"
+ }
+
append_bool "$cfg" ignore "-I $ifname"
config_get proto "$net" proto
@@ -234,10 +240,10 @@ start() {
/usr/sbin/dnsmasq $args && {
rm -f /tmp/resolv.conf
- cat > /tmp/resolv.conf <<EOF
-nameserver 127.0.0.1
-search lan
-EOF
+ DNS_SERVERS="$DNS_SERVERS 127.0.0.1"
+ for DNS_SERVER in $DNS_SERVERS ; do
+ echo "nameserver $DNS_SERVER" >> /tmp/resolv.conf
+ done
}
}