Move is_wired_interface() from rc.d/wpa_supplicant into network.subr,
simplify it a bit, and make use of that method to determine if an interface is a candidate for IPv6 rtsol rather than listing all of the possible wireless interfaces that should _not_ get rtsol'ed. This change is only relevant for 8.0+ unless the "wlan mandatory" code gets ported back to RELENG_7.
This commit is contained in:
parent
d05203a19f
commit
86567e4164
@ -816,6 +816,17 @@ hexprint()
|
||||
echo ${str}
|
||||
}
|
||||
|
||||
is_wired_interface()
|
||||
{
|
||||
local media
|
||||
|
||||
case `ifconfig $1 2>/dev/null` in
|
||||
*media:?Ethernet*) media=Ethernet ;;
|
||||
esac
|
||||
|
||||
test "$media" = "Ethernet"
|
||||
}
|
||||
|
||||
# Setup the interfaces for IPv6
|
||||
network6_interface_setup()
|
||||
{
|
||||
@ -858,14 +869,19 @@ network6_interface_setup()
|
||||
ifconfig $i inet6 ${ipv6_ifconfig} alias
|
||||
fi
|
||||
|
||||
# Wireless NIC cards are virtualized through the wlan interface
|
||||
if ! is_wired_interface ${i}; then
|
||||
case "${i}" in
|
||||
wlan*) rtsol_available=yes ;;
|
||||
*) rtsol_available=no ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
if [ ${rtsol_available} = yes -a ${rtsol_interface} = yes ]
|
||||
then
|
||||
case ${i} in
|
||||
lo0|gif[0-9]*|stf[0-9]*|faith[0-9]*|lp[0-9]*|sl[0-9]*|tun[0-9]*|pflog[0-9]*|pfsync[0-9]*)
|
||||
;;
|
||||
# Wireless NIC cards are virtualized through the wlan interface
|
||||
an[0-9]*|ath[0-9]*|ipw[0-9]*|iwi[0-9]*|iwn[0-9]*|ral[0-9]*|wi[0-9]*|wl[0-9]*|wpi[0-9]*)
|
||||
;;
|
||||
*)
|
||||
rtsol_interfaces="${rtsol_interfaces} ${i}"
|
||||
;;
|
||||
|
@ -18,18 +18,6 @@ if [ -z "$ifn" ]; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
is_wired_interface()
|
||||
{
|
||||
media=`ifconfig $1 2>/dev/null | while read line; do
|
||||
case "$line" in
|
||||
*media:?Ethernet*)
|
||||
echo Ethernet
|
||||
;;
|
||||
esac
|
||||
done`
|
||||
test "$media" = "Ethernet"
|
||||
}
|
||||
|
||||
is_ndis_interface()
|
||||
{
|
||||
case `sysctl -n net.wlan.${1#wlan}.%parent 2>/dev/null` in
|
||||
|
Loading…
Reference in New Issue
Block a user