implement network callbacks for broadcom wl
SVN-Revision: 5118
This commit is contained in:
		@@ -1,16 +1,34 @@
 | 
			
		||||
append DRIVERS "broadcom"
 | 
			
		||||
 | 
			
		||||
bridge_interface() {
 | 
			
		||||
	(
 | 
			
		||||
		. /etc/functions.sh
 | 
			
		||||
		include network
 | 
			
		||||
find_vif_config() {(
 | 
			
		||||
	local vif="$1"
 | 
			
		||||
	local cfg
 | 
			
		||||
	local ifname
 | 
			
		||||
 | 
			
		||||
	config_get cfg "$vif" network
 | 
			
		||||
 | 
			
		||||
	[ -z "$cfg" ] && {
 | 
			
		||||
		include /lib/network
 | 
			
		||||
		scan_interfaces
 | 
			
		||||
		cfg="$(find_config "$1")"
 | 
			
		||||
		[ -z "$cfg" ] && return 0
 | 
			
		||||
		config_get iftype "$cfg" type
 | 
			
		||||
		[ "$iftype" = bridge ] && config_get "$iftype" bridge
 | 
			
		||||
	)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		config_get ifname "$vif" ifnamea
 | 
			
		||||
 | 
			
		||||
		cfg="$(find_config "$ifname")"
 | 
			
		||||
	}
 | 
			
		||||
	[ -z "$cfg" ] && return 0
 | 
			
		||||
	echo "$cfg"
 | 
			
		||||
)}
 | 
			
		||||
 | 
			
		||||
bridge_interface() {(
 | 
			
		||||
	local cfg="$1"
 | 
			
		||||
	[ -z "$cfg" ] && return 0
 | 
			
		||||
 | 
			
		||||
	include /lib/network
 | 
			
		||||
	scan_interfaces
 | 
			
		||||
 | 
			
		||||
	config_get iftype "$cfg" type
 | 
			
		||||
	[ "$iftype" = bridge ] && config_get "$iftype" ifname
 | 
			
		||||
)}
 | 
			
		||||
 | 
			
		||||
scan_broadcom() {
 | 
			
		||||
	local device="$1"
 | 
			
		||||
@@ -154,8 +172,12 @@ enable_broadcom() {
 | 
			
		||||
		
 | 
			
		||||
		config_get ifname "$vif" ifname
 | 
			
		||||
		append if_up "ifconfig $ifname up" ";$N"
 | 
			
		||||
		net_cfg="$(find_vif_config "$vif")"
 | 
			
		||||
		[ -z "$net_cfg" ] || {
 | 
			
		||||
			bridge="$(bridge_interface "$net_cfg")"
 | 
			
		||||
			append if_up "start_net '$ifname' '$net_cfg'" ";$N"
 | 
			
		||||
		}
 | 
			
		||||
		[ -z "$nasopts" ] || {
 | 
			
		||||
			bridge="$(bridge_interface "$ifname")"
 | 
			
		||||
			eval "${vif}_ssid=\"\$ssid\""
 | 
			
		||||
			mode="-A"
 | 
			
		||||
			[ "$vif" = "$sta_if" ] && mode="-S"
 | 
			
		||||
@@ -185,8 +207,8 @@ $vif_pre_up
 | 
			
		||||
up
 | 
			
		||||
$vif_post_up
 | 
			
		||||
EOF
 | 
			
		||||
	eval "$nas_cmd"
 | 
			
		||||
	eval "$if_up"
 | 
			
		||||
	eval "$nas_cmd"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user