summaryrefslogtreecommitdiffstats
path: root/package/base-files/default/sbin/ifup
blob: 35b2fc4cdd4f5bd9d88077c63a39230b2bfec754 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/bin/sh
# Copyright (C) 2006 OpenWrt.org

. /sbin/ifdown "$@"

config_get iftype "$1" type
case "$iftype" in
	bridge) config_get ifname "$1" ifnames;;
	*) config_get ifname "$1" ifname;;
esac

for dev in $ifname; do
	brctl show | grep "$dev" >/dev/null && {
		# interface is still part of a bridge, correct that

		for brdev in $(brctl show | awk '$2 ~ /^[0-9].*\./ { print $1 }'); do
			brctl delif "$brdev" "$dev" 2>/dev/null >/dev/null
		done
	}
	setup_interface "$dev" "$1"
done