diff options
author | cyrus <cyrus@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-02-01 12:28:24 +0000 |
---|---|---|
committer | cyrus <cyrus@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-02-01 12:28:24 +0000 |
commit | 8a0e57cc7c94f77a98f973b06e04bdfc8fb5adf6 (patch) | |
tree | 96ecc7d79f360bc4e81e8700f9aa2e29e3f1faea /package/base-files/files | |
parent | 1b45e669d20b66dc18333227c205f64ff102e7de (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-x | package/base-files/files/etc/init.d/boot | 8 | ||||
-rw-r--r-- | package/base-files/files/etc/sysctl_early.conf | 3 |
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 |