move vlan and wifi setup into arch-specific base-files
SVN-Revision: 2973
This commit is contained in:
parent
21c1b5ed5e
commit
69bc407e2d
3 changed files with 76 additions and 22 deletions
|
@ -1,30 +1,10 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
setup_eth()
|
setup_eth()
|
||||||
{
|
{
|
||||||
for part in $(nvram get unused_ifnames); do
|
for part in $(nvram get unused_ifnames); do
|
||||||
[ "$part" = "$INTERFACE" ] && return 0
|
[ "$part" = "$INTERFACE" ] && exit 0
|
||||||
done
|
done
|
||||||
[ -f /proc/net/wl0 ] && {
|
|
||||||
lsmod | grep wlcompat >&- || insmod wlcompat
|
|
||||||
}
|
|
||||||
iwconfig "$INTERFACE" 2>&- | grep -v 'no wireless' >&- && {
|
|
||||||
/sbin/wifi
|
|
||||||
}
|
|
||||||
[ -d /proc/switch ] || {
|
|
||||||
insmod switch-core
|
|
||||||
insmod switch-robo || insmod switch-adm
|
|
||||||
}
|
|
||||||
if="$(echo "$INTERFACE" | sed s,eth,et,)"
|
|
||||||
ifconfig "$INTERFACE" up 2>&- >&-
|
ifconfig "$INTERFACE" up 2>&- >&-
|
||||||
for vlan in $(seq 0 15); do
|
|
||||||
[ "$(nvram get vlan${vlan}hwname)" = "$if" ] && {
|
|
||||||
$DEBUG vconfig add "$INTERFACE" "$vlan"
|
|
||||||
vports="$(nvram get vlan${vlan}ports)"
|
|
||||||
[ \! -z "$vports" -a -d "/proc/switch/$INTERFACE" ] && \
|
|
||||||
echo "$vports" > "/proc/switch/$INTERFACE/vlan/$vlan/ports"
|
|
||||||
echo "1" > "/proc/switch/$INTERFACE/enable_vlan"
|
|
||||||
}
|
|
||||||
done
|
|
||||||
}
|
}
|
||||||
|
|
||||||
find_name()
|
find_name()
|
||||||
|
|
|
@ -0,0 +1,40 @@
|
||||||
|
#!/bin/sh
|
||||||
|
setup_eth()
|
||||||
|
{
|
||||||
|
for part in $(nvram get unused_ifnames); do
|
||||||
|
[ "$part" = "$INTERFACE" ] && exit 0
|
||||||
|
done
|
||||||
|
[ -f /proc/net/wl0 ] && {
|
||||||
|
lsmod | grep wlcompat >&- || insmod wlcompat
|
||||||
|
}
|
||||||
|
iwconfig "$INTERFACE" 2>&- | grep -v 'no wireless' >&- && {
|
||||||
|
/sbin/wifi
|
||||||
|
}
|
||||||
|
[ -d /proc/switch ] || {
|
||||||
|
insmod switch-core
|
||||||
|
insmod switch-robo || insmod switch-adm
|
||||||
|
}
|
||||||
|
if="$(echo "$INTERFACE" | sed s,eth,et,)"
|
||||||
|
ifconfig "$INTERFACE" up 2>&- >&-
|
||||||
|
[ -d "/proc/switch/$INTERFACE" ] || return 0
|
||||||
|
echo "1" > "/proc/switch/$INTERFACE/enable_vlan"
|
||||||
|
for vlan in $(seq 0 15); do
|
||||||
|
[ "$(nvram get vlan${vlan}hwname)" = "$if" ] && {
|
||||||
|
vports="$(nvram get vlan${vlan}ports)"
|
||||||
|
[ -n "$vports" ] && echo "$vports" > "/proc/switch/$INTERFACE/vlan/$vlan/ports"
|
||||||
|
$DEBUG vconfig add "$INTERFACE" "$vlan"
|
||||||
|
}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
do_register()
|
||||||
|
{
|
||||||
|
case "${INTERFACE%%[0-9]*}" in
|
||||||
|
eth) setup_eth;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
case "$ACTION" in
|
||||||
|
add|register) do_register;;
|
||||||
|
esac
|
|
@ -0,0 +1,34 @@
|
||||||
|
#!/bin/sh
|
||||||
|
setup_eth()
|
||||||
|
{
|
||||||
|
for part in $(nvram get unused_ifnames); do
|
||||||
|
[ "$part" = "$INTERFACE" ] && exit 0
|
||||||
|
done
|
||||||
|
[ -d /proc/switch ] || {
|
||||||
|
insmod switch-core
|
||||||
|
insmod switch-robo || insmod switch-adm
|
||||||
|
}
|
||||||
|
if="$(echo "$INTERFACE" | sed s,eth,et,)"
|
||||||
|
ifconfig "$INTERFACE" up 2>&- >&-
|
||||||
|
[ -d "/proc/switch/$INTERFACE" ] || return 0
|
||||||
|
echo "1" > "/proc/switch/$INTERFACE/enable_vlan"
|
||||||
|
for vlan in $(seq 0 15); do
|
||||||
|
[ "$(nvram get vlan${vlan}hwname)" = "$if" ] && {
|
||||||
|
vports="$(nvram get vlan${vlan}ports)"
|
||||||
|
[ -n "$vports" ] && echo "$vports" > "/proc/switch/$INTERFACE/vlan/$vlan/ports"
|
||||||
|
$DEBUG vconfig add "$INTERFACE" "$vlan"
|
||||||
|
}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
do_register()
|
||||||
|
{
|
||||||
|
case "${INTERFACE%%[0-9]*}" in
|
||||||
|
eth) setup_eth;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
case "$ACTION" in
|
||||||
|
add|register) do_register;;
|
||||||
|
esac
|
Loading…
Reference in a new issue