mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-10-30 13:34:27 -04:00 
			
		
		
		
	mac80211: rework recent mac80211.sh additions: - split antenna options into rxantenna and txantenna to bring it in line with broadcom and madwifi - get rid of temporary variables - follow the documented config protocol for wep keys (option key # + option key# [s:]data)
SVN-Revision: 25116
This commit is contained in:
		
							parent
							
								
									10923cff7e
								
							
						
					
					
						commit
						4e369e5378
					
				| @ -239,7 +239,8 @@ enable_mac80211() { | ||||
| 	config_get txpower "$device" txpower | ||||
| 	config_get country "$device" country | ||||
| 	config_get distance "$device" distance | ||||
| 	config_get antenna "$device" antenna | ||||
| 	config_get txantenna "$device" txantenna | ||||
| 	config_get rxantenna "$device" rxantenna | ||||
| 	config_get frag "$device" frag | ||||
| 	config_get rts "$device" rts | ||||
| 	find_mac80211_phy "$device" || return 0 | ||||
| @ -255,8 +256,10 @@ enable_mac80211() { | ||||
| 		fixed=1 | ||||
| 	} | ||||
| 
 | ||||
| 	local antspec="${txantenna:+$txantenna }$rxantenna" | ||||
| 	iw phy "$phy" set antenna ${antspec:-all} | ||||
| 
 | ||||
| 	[ -n "$distance" ] && iw phy "$phy" set distance "$distance" | ||||
| 	[ -n "$antenna" ] && iw phy "$phy" set antenna $antenna | ||||
| 	[ -n "$frag" ] && iw phy "$phy" set frag "${frag%%.*}" | ||||
| 	[ -n "$rts" ] && iw phy "$phy" set rts "${rts%%.*}" | ||||
| 
 | ||||
| @ -391,18 +394,40 @@ enable_mac80211() { | ||||
| 					config_get bintval "$vif" bintval | ||||
| 					config_get basicrates "$vif" basicrates | ||||
| 					config_get encryption "$vif" encryption | ||||
| 					config_get key "$vif" key | ||||
| 					config_get key "$vif" key 1 | ||||
| 					config_get mcast_rate "$vif" mcast_rate | ||||
| 					[ -n "$bintval" ] && BINTVAL="beacon-interval $bintval" | ||||
| 					[ -n "$basicrates" ] && BRATES="basic-rates $basicrates" | ||||
| 					[ "$encryption" == "wep" ] && [ -n "$key" ] && KEY="key d:0:$key" | ||||
| 
 | ||||
| 					local keyspec="" | ||||
| 					[ "$encryption" == "wep" ] && { | ||||
| 						case "$key" in | ||||
| 							[1234]) | ||||
| 								local idx | ||||
| 								for idx in 1 2 3 4; do | ||||
| 									local ikey | ||||
| 									config_get ikey "$vif" "key$idx" | ||||
| 
 | ||||
| 									[ -n "$ikey" ] && { | ||||
| 										ikey="$(($idx - 1)):$(prepare_key_wep "$ikey")" | ||||
| 										[ $idx -eq $key ] && ikey="d:$ikey" | ||||
| 										append keyspec "$ikey" | ||||
| 									} | ||||
| 							;; | ||||
| 							*) append keyspec "d:0:$(prepare_key_wep "$key")" ;; | ||||
| 					} | ||||
| 
 | ||||
| 					local mcval="" | ||||
| 					[ -n "$mcast_rate" ] && { | ||||
| 						mcval="$(($mcast_rate / 1000))" | ||||
| 						mcsub="$(( ($mcast_rate / 100) % 10 ))" | ||||
| 						[ "$mcsub" -gt 0 ] && mcval="$mcval.$mcsub" | ||||
| 					} | ||||
| 					iw dev "$ifname" ibss join "$ssid" $freq ${fixed:+fixed-freq} $bssid ${mcval:+mcast-rate $mcval} $BINTVAL $BRATES $KEY | ||||
| 
 | ||||
| 					iw dev "$ifname" ibss join "$ssid" $freq \ | ||||
| 						${fixed:+fixed-freq} $bssid \ | ||||
| 						${mcval:+mcast-rate $mcval} \ | ||||
| 						${bintval:+beacon-interval $bintval} \ | ||||
| 						${basicrates:+basic-rates $basicrates} \ | ||||
| 						${keyspec:+keys $keyspec} | ||||
| 				;; | ||||
| 				sta) | ||||
| 					if eval "type wpa_supplicant_setup_vif" 2>/dev/null >/dev/null; then | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user