Forward port whiterussian resolv.conf changes
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 8 Jan 2007 21:33:53 +0000 (21:33 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 8 Jan 2007 21:33:53 +0000 (21:33 +0000)
/etc/resolv.conf links to /tmp/resolv.conf
/tmp/resolv.conf links to /tmp/resolv.conf.auto by default (which is where the ISPs nameserver is in)
When dnsmasq starts, it replaces /tmp/resolv.conf with a file pointing to 127.0.0.1

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@6043 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/base-files/Makefile
package/base-files/files/etc/init.d/boot
package/base-files/files/etc/resolv.conf [deleted file]
package/base-files/files/lib/network/config.sh
package/base-files/files/usr/share/udhcpc/default.script
package/dnsmasq/files/dnsmasq.conf
package/dnsmasq/files/dnsmasq.init
package/ppp/Makefile
package/ppp/files/ppp.sh

index 16c6dc1..14917f6 100644 (file)
@@ -115,6 +115,7 @@ define Package/base-files$(TARGET)/install
        rm -f $(1)/var
        ln -sf /tmp $(1)/var
        mkdir -p $(1)/etc
+       ln -sf /tmp/resolv.conf $(1)/etc/resolv.conf
        $(call Package/base-files/install-target,$(1))
        for conffile in $(1)/etc/config/*; do \
                if [ -f "$$$$conffile" ]; then \
index c583652..db7ec8c 100755 (executable)
@@ -15,6 +15,7 @@ start() {
        mkdir -p /var/lock
        touch /var/log/wtmp
        touch /var/log/lastlog
+       ln -s /tmp/resolv.conf.auto /tmp/resolv.conf
        [ "$FAILSAFE" = "true" ] && touch /tmp/.failsafe
        
        # manually trigger hotplug before loading modules
diff --git a/package/base-files/files/etc/resolv.conf b/package/base-files/files/etc/resolv.conf
deleted file mode 100644 (file)
index 9617eac..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-nameserver 127.0.0.1
-search lan
index 845b33e..f3ead6a 100755 (executable)
@@ -120,9 +120,9 @@ setup_interface() {
                        $DEBUG ifconfig "$iface" "$ipaddr" netmask "$netmask"
                        $DEBUG ifconfig "$iface" inet6 add "$ip6addr" 
                        [ -z "$gateway" ] || route add default gw "$gateway"
-                       [ -z "$dns" -o -f /tmp/resolv.conf ] || {
+                       [ -z "$dns" -o -f /tmp/resolv.conf.auto ] || {
                                for ns in $dns; do
-                                       echo "nameserver $ns" >> /tmp/resolv.conf
+                                       echo "nameserver $ns" >> /tmp/resolv.conf.auto
                                done
                        }
 
index 53c8faf..f39d21e 100755 (executable)
@@ -3,7 +3,7 @@
 . /etc/functions.sh
 include /lib/network
 
-RESOLV_CONF="/tmp/resolv.conf"
+RESOLV_CONF="/tmp/resolv.conf.auto"
 
 hotplug_event() {
        scan_interfaces
index 8a51f84..8a8191b 100644 (file)
@@ -8,7 +8,7 @@ localise-queries
 local=/lan/
 domain=lan
 expand-hosts
-resolv-file=/tmp/resolv.conf
+resolv-file=/tmp/resolv.conf.auto
 
 @ifdef dhcp_enable
 dhcp-range=@@start@@,@@end@@,@@netmask@@,@@lease@@
index 7afcee4..5e72fd0 100644 (file)
@@ -50,7 +50,13 @@ start() {
                [ -z "$wan_proto" -o "$wan_proto" = "none" ] || echo "@define wan_ifname $wan_ifname"
        
                cat /etc/dnsmasq.conf
-       ) | awk -f /lib/config/template.awk | dnsmasq -C /proc/self/fd/0
+       ) | awk -f /lib/config/template.awk | dnsmasq -C /proc/self/fd/0 && {
+               rm -f /tmp/resolv.conf
+               cat > /tmp/resolv.conf <<EOF
+nameserver 127.0.0.1
+search lan
+EOF
+       }
 }
 
 stop() {
index 2938b91..dc1f37b 100644 (file)
@@ -124,7 +124,7 @@ define Package/ppp/install
        $(INSTALL_BIN) ./files/etc/ppp/ip-down $(1)/etc/ppp/
        $(INSTALL_DIR) $(1)/etc/ppp/ip-down.d
        $(INSTALL_DATA) ./files/etc/ppp/options $(1)/etc/ppp/
-       ln -sf /tmp/resolv.conf $(1)/etc/ppp/resolv.conf
+       ln -sf /tmp/resolv.conf.auto $(1)/etc/ppp/resolv.conf
 endef
        
 define Package/ppp-mod-pppoa/install
index 6fd40fb..0bd75fc 100644 (file)
@@ -25,7 +25,7 @@ start_pppd() {
        [ "$interval" != "$keepalive" ] || interval=5
        
        config_get demand "$cfg" demand
-       [ -n "$demand" ] && echo "nameserver 1.1.1.1" > /tmp/resolv.conf
+       [ -n "$demand" ] && echo "nameserver 1.1.1.1" > /tmp/resolv.conf.auto
        /usr/sbin/pppd "$@" \
                ${keepalive:+lcp-echo-interval $interval lcp-echo-failure ${keepalive%%[, ]*}} \
                ${demand:+precompiled-active-filter /etc/ppp/filter demand idle }${demand:-persist} \