openwrtv4/openwrt/package/base-files/default/sbin/ifup
Felix Fietkau 0884467ae8 sync base-files with whiterussian
SVN-Revision: 2260
2005-10-22 20:47:19 +00:00

36 lines
913 B
Bash
Executable file

#!/bin/ash
[ $# = 0 ] && { echo " $0 <group>"; exit; }
. /etc/functions.sh
. /etc/network.overrides
[ "$FAILSAFE" != "true" -a -e /etc/config/network ] && . /etc/config/network
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_valid $if || [ "$if_proto" = "pptp" ] || exit
mac=$(nvram get ${type}_hwaddr)
$DEBUG ifconfig $if down 2>&-
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
do_ifup $if_proto $type