mac80211: use wpa_supplicant for unencrypted connections to improve client mode reliability (patch by Stijn Tintel from #6653)
SVN-Revision: 19550
This commit is contained in:
		@@ -12,6 +12,9 @@ wpa_supplicant_setup_vif() {
 | 
				
			|||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	case "$enc" in
 | 
						case "$enc" in
 | 
				
			||||||
 | 
							*none*)
 | 
				
			||||||
 | 
								key_mgmt='NONE'
 | 
				
			||||||
 | 
							;;
 | 
				
			||||||
		*wep*)
 | 
							*wep*)
 | 
				
			||||||
			key_mgmt='NONE'
 | 
								key_mgmt='NONE'
 | 
				
			||||||
			config_get key "$vif" key
 | 
								config_get key "$vif" key
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -312,6 +312,9 @@ enable_mac80211() {
 | 
				
			|||||||
			local key keystring
 | 
								local key keystring
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			case "$enc" in
 | 
								case "$enc" in
 | 
				
			||||||
 | 
									*none*)
 | 
				
			||||||
 | 
										config_get keymgmt "$vif" keymgmt
 | 
				
			||||||
 | 
									;;
 | 
				
			||||||
				*wep*)
 | 
									*wep*)
 | 
				
			||||||
					config_get keymgmt "$vif" keymgmt
 | 
										config_get keymgmt "$vif" keymgmt
 | 
				
			||||||
					if [ -z "$keymgmt" ]; then
 | 
										if [ -z "$keymgmt" ]; then
 | 
				
			||||||
@@ -397,7 +400,18 @@ enable_mac80211() {
 | 
				
			|||||||
						fi
 | 
											fi
 | 
				
			||||||
					;;
 | 
										;;
 | 
				
			||||||
					*)
 | 
										*)
 | 
				
			||||||
						iw dev "$ifname" connect "$ssid" ${fixed:+$freq} $bssid
 | 
											if [ -z "$keymgmt" ]; then
 | 
				
			||||||
 | 
												iw dev "$ifname" connect "$ssid" ${fixed:+$freq} $bssid
 | 
				
			||||||
 | 
											else
 | 
				
			||||||
 | 
												if eval "type wpa_supplicant_setup_vif" 2>/dev/null >/dev/null; then
 | 
				
			||||||
 | 
													wpa_supplicant_setup_vif "$vif" wext || {
 | 
				
			||||||
 | 
														echo "enable_mac80211($device): Failed to set up wpa_supplicant for interface $ifname" >&2
 | 
				
			||||||
 | 
														# make sure this wifi interface won't accidentally stay open without encryption
 | 
				
			||||||
 | 
														ifconfig "$ifname" down
 | 
				
			||||||
 | 
														continue
 | 
				
			||||||
 | 
													}
 | 
				
			||||||
 | 
												fi
 | 
				
			||||||
 | 
											fi
 | 
				
			||||||
					;;
 | 
										;;
 | 
				
			||||||
				esac
 | 
									esac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user