Browse Source

Forward port whiterussian resolv.conf changes /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

SVN-Revision: 6043
Felix Fietkau 19 years ago
parent
commit
656412d1a3

+ 1 - 0
package/base-files/Makefile

@@ -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 \

+ 1 - 0
package/base-files/files/etc/init.d/boot

@@ -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

+ 0 - 2
package/base-files/files/etc/resolv.conf

@@ -1,2 +0,0 @@
-nameserver 127.0.0.1
-search lan

+ 2 - 2
package/base-files/files/lib/network/config.sh

@@ -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
 			}
 

+ 1 - 1
package/base-files/files/usr/share/udhcpc/default.script

@@ -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

+ 1 - 1
package/dnsmasq/files/dnsmasq.conf

@@ -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@@

+ 7 - 1
package/dnsmasq/files/dnsmasq.init

@@ -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() {

+ 1 - 1
package/ppp/Makefile

@@ -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

+ 1 - 1
package/ppp/files/ppp.sh

@@ -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} \