summaryrefslogtreecommitdiffstats
path: root/etc/network.subr
diff options
context:
space:
mode:
authorhrs <hrs@FreeBSD.org>2014-05-16 14:48:21 +0000
committerhrs <hrs@FreeBSD.org>2014-05-16 14:48:21 +0000
commitaf9fb17a16f82b4b8fb3d41be0bca4b3c60eb83d (patch)
tree376bd4b371bf9634b3a8310c137e35f799b5f26b /etc/network.subr
parentde22c5aa1a72ab74f636f97b040f0fdfe11d90e8 (diff)
downloadFreeBSD-src-af9fb17a16f82b4b8fb3d41be0bca4b3c60eb83d.zip
FreeBSD-src-af9fb17a16f82b4b8fb3d41be0bca4b3c60eb83d.tar.gz
Move configuration of IPv6 NDP flags to a point before handling ifconfig_IF.
This fixes a race that a non-IPv4 interface can get an EUI64 LLA even if it has IFDISABLED nd6 flag at boot time.
Diffstat (limited to 'etc/network.subr')
-rw-r--r--etc/network.subr17
1 files changed, 10 insertions, 7 deletions
diff --git a/etc/network.subr b/etc/network.subr
index aa72749..5c918cc 100644
--- a/etc/network.subr
+++ b/etc/network.subr
@@ -132,13 +132,6 @@ ifconfig_up()
_cfg=0
fi
- # ifconfig_IF
- ifconfig_args=`ifconfig_getargs $1`
- if [ -n "${ifconfig_args}" ]; then
- eval ${IFCONFIG_CMD} $1 ${ifconfig_args}
- _cfg=0
- fi
-
# inet6 specific
if ! noafif $1 && afexists inet6; then
if checkyesno ipv6_activate_all_interfaces; then
@@ -174,7 +167,17 @@ ifconfig_up()
if [ -n "${_ipv6_opts}" ]; then
${IFCONFIG_CMD} $1 inet6 ${_ipv6_opts}
fi
+ fi
+ # ifconfig_IF
+ ifconfig_args=`ifconfig_getargs $1`
+ if [ -n "${ifconfig_args}" ]; then
+ eval ${IFCONFIG_CMD} $1 ${ifconfig_args}
+ _cfg=0
+ fi
+
+ # inet6 specific
+ if ! noafif $1 && afexists inet6; then
# ifconfig_IF_ipv6
ifconfig_args=`ifconfig_getargs $1 ipv6`
if [ -n "${ifconfig_args}" ]; then
OpenPOWER on IntegriCloud