|
|
|
@ -8,32 +8,34 @@ type=$1 |
|
|
|
|
debug "### ifup $type ###" |
|
|
|
|
|
|
|
|
|
if_proto=$(nvram get ${type}_proto) |
|
|
|
|
if=$(nvram get ${type}_ifname) |
|
|
|
|
[ "${if%%[0-9]}" = "ppp" ] && if=$(nvram get ${if_proto}_ifname) |
|
|
|
|
[ "${if_proto}" = "pppoa" ] || { |
|
|
|
|
if=$(nvram get ${type}_ifname) |
|
|
|
|
[ "${if%%[0-9]}" = "ppp" ] && if=$(nvram get ${if_proto}_ifname) |
|
|
|
|
|
|
|
|
|
if_valid $if || exit |
|
|
|
|
mac=$(nvram get ${type}_hwaddr) |
|
|
|
|
$DEBUG ifconfig $if down 2>&- |
|
|
|
|
if_valid $if || exit |
|
|
|
|
mac=$(nvram get ${type}_hwaddr) |
|
|
|
|
$DEBUG ifconfig $if down 2>&- |
|
|
|
|
|
|
|
|
|
pidfile=/var/run/${if}.pid |
|
|
|
|
[ -f $pidfile ] && $DEBUG kill $(cat $pidfile) |
|
|
|
|
pidfile=/var/run/${if}.pid |
|
|
|
|
[ -f $pidfile ] && $DEBUG kill $(cat $pidfile) |
|
|
|
|
|
|
|
|
|
if [ "${if%%[0-9]}" = "br" ]; then |
|
|
|
|
stp=$(nvram get ${type}_stp) |
|
|
|
|
$DEBUG brctl delbr $if 2>&- |
|
|
|
|
$DEBUG brctl addbr $if |
|
|
|
|
$DEBUG brctl setfd $if 0 |
|
|
|
|
$DEBUG brctl stp $if ${stp:-0} |
|
|
|
|
if [ "${if%%[0-9]}" = "br" ]; then |
|
|
|
|
stp=$(nvram get ${type}_stp) |
|
|
|
|
$DEBUG brctl delbr $if 2>&- |
|
|
|
|
$DEBUG brctl addbr $if |
|
|
|
|
$DEBUG brctl setfd $if 0 |
|
|
|
|
$DEBUG brctl stp $if ${stp:-0} |
|
|
|
|
|
|
|
|
|
for sif in $(nvram get ${type}_ifnames); do |
|
|
|
|
if_valid $sif || continue |
|
|
|
|
${mac:+$DEBUG ifconfig $sif down hw ether $mac} |
|
|
|
|
$DEBUG ifconfig $sif 0.0.0.0 up |
|
|
|
|
$DEBUG brctl addif $if $sif |
|
|
|
|
done |
|
|
|
|
else |
|
|
|
|
${mac:+$DEBUG ifconfig $if down hw ether $mac} |
|
|
|
|
fi |
|
|
|
|
for sif in $(nvram get ${type}_ifnames); do |
|
|
|
|
if_valid $sif || continue |
|
|
|
|
${mac:+$DEBUG ifconfig $sif down hw ether $mac} |
|
|
|
|
$DEBUG ifconfig $sif 0.0.0.0 up |
|
|
|
|
$DEBUG brctl addif $if $sif |
|
|
|
|
done |
|
|
|
|
else |
|
|
|
|
${mac:+$DEBUG ifconfig $if down hw ether $mac} |
|
|
|
|
fi |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
case "$if_proto" in |
|
|
|
|
static) |
|
|
|
|