move platform specific base-files into target/linux/<targetname>
[openwrt.git] / package / base-files / default / sbin / ifup
index 67e01a3..81ec2c0 100755 (executable)
@@ -1,34 +1,11 @@
 #!/bin/sh
-[ $# = 0 ] && { echo "  $0 <group>"; exit; }
-. /etc/functions.sh
-. /etc/network.overrides
-[ "$FAILSAFE" != "true" -a -e /etc/config/network ] && . /etc/config/network
+# Copyright (C) 2006 OpenWrt.org
 
-ifdown $1
+. /sbin/ifdown "$@"
 
-debug "### ifup $type ###"
-type=$1
+config_get iftype "$1" type
+config_get ifname "$1" device
 
-if_proto=$(nvram get ${type}_proto)
-if=$(nvram get ${type}_ifname)
-
-case "$if_proto" in
-       pppoa) hotplug_dev register atm0; exit 0 ;;
-       pppoe)
-               ifconfig nas0 2>&- >&- || {
-                       hotplug_dev register atm0
-                       exit 0
-               }
-       ;;
-       none|"") exit 0;;
-esac
-
-[ "${if%%[0-9]*}" = "ppp" ] && if="$(nvram get ${if_proto}_ifname)"
-
-if [ "${if%%[0-9]}" = "br" ]; then
-       for sif in $(nvram get ${type}_ifnames); do
-               hotplug_dev register "$sif"
-       done
-else
-       hotplug_dev register "$if"
-fi
+for dev in $ifname; do
+       setup_interface "$dev" "$1"
+done