From d5ca84ad0f2b070f529ca361a2d45d9f768323b3 Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@openwrt.org>
Date: Sun, 11 Oct 2009 01:05:17 +0000
Subject: [PATCH] mac80211: fix encryption fallback for sta mode, add
 frequency/bssid selection support

SVN-Revision: 18025
---
 package/mac80211/files/lib/wifi/mac80211.sh | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/package/mac80211/files/lib/wifi/mac80211.sh b/package/mac80211/files/lib/wifi/mac80211.sh
index c11da4279b..29c1041bfd 100644
--- a/package/mac80211/files/lib/wifi/mac80211.sh
+++ b/package/mac80211/files/lib/wifi/mac80211.sh
@@ -231,14 +231,12 @@ enable_mac80211() {
 				iw dev "$ifname" ibss join "$ssid" $freq ${fixed:+fixed-freq} $bssid
 			;;
 			sta|mesh)
+				config_get bssid "$vif" bssid
 				case "$enc" in												 
-					*)
-						iw dev "$ifname" connect "$ssid"
-					;;
 					wep)
 						if [ -e "$keymgmt" ]; then
 							[ -n "$keystring" ] &&
-								iw dev "$ifname" connect "$ssid" key "$keystring"
+								iw dev "$ifname" connect "$ssid" ${fixed:+$freq} $bssid key "$keystring"
 						else
 							if eval "type wpa_supplicant_setup_vif" 2>/dev/null >/dev/null; then
 								wpa_supplicant_setup_vif "$vif" wext || {
@@ -260,6 +258,9 @@ enable_mac80211() {
 							}
 						fi
 					;;
+					*)
+						iw dev "$ifname" connect "$ssid" ${fixed:+$freq} $bssid
+					;;
 				esac
 
 			;;
-- 
2.30.2