summaryrefslogtreecommitdiff
path: root/package/base-files/files
diff options
context:
space:
mode:
authorcyrus <cyrus@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-02-01 12:28:24 +0000
committercyrus <cyrus@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-02-01 12:28:24 +0000
commit8a0e57cc7c94f77a98f973b06e04bdfc8fb5adf6 (patch)
tree96ecc7d79f360bc4e81e8700f9aa2e29e3f1faea /package/base-files/files
parent1b45e669d20b66dc18333227c205f64ff102e7de (diff)
base-files: Fix IPv6 early sysctls again
* Kernel IPv6 /proc interface inconsistency caused races git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35417 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/base-files/files')
-rwxr-xr-xpackage/base-files/files/etc/init.d/boot8
-rw-r--r--package/base-files/files/etc/sysctl_early.conf3
2 files changed, 6 insertions, 5 deletions
diff --git a/package/base-files/files/etc/init.d/boot b/package/base-files/files/etc/init.d/boot
index 1800342367..005c4ad6f8 100755
--- a/package/base-files/files/etc/init.d/boot
+++ b/package/base-files/files/etc/init.d/boot
@@ -96,8 +96,12 @@ start() {
[ -n "$rootdev" ] && ln -s "$rootdev" /dev/root
}
- # run early sysctl
- [ -f /etc/sysctl_early.conf ] && sysctl -p /etc/sysctl_early.conf -e >&-
+ # early sysctl to avoid networking races
+ if [ -d /proc/sys/net/ipv6/conf ]; then
+ for i in /proc/sys/net/ipv6/conf/*/accept_ra; do
+ echo 0 > $i
+ done
+ fi
}
stop() {
diff --git a/package/base-files/files/etc/sysctl_early.conf b/package/base-files/files/etc/sysctl_early.conf
deleted file mode 100644
index 6f2eeea040..0000000000
--- a/package/base-files/files/etc/sysctl_early.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-# Avoid race-conditions with SLAAC
-net.ipv6.conf.default.accept_ra=0
-net.ipv6.conf.all.accept_ra=0