aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2007-12-29 04:58:39 -0500
committerDavid S. Miller <davem@davemloft.net>2008-01-28 18:08:47 -0500
commitc414e84b2200ca8a7e7ae565cad200e5c02e02ec (patch)
tree8e4121b30330b003b9dc9a57a433acdeb95fc6b4
parentb16f13d00c6f7e7317d3074f9bd07b5c9f313891 (diff)
ieee80211softmac_auth_resp() fix
The struct ieee8021_auth * passed to it comes straight from skb->data without any conversions; members of the struct are little-endian, so we'd better take that into account when doing switch by auth->algorithm, etc. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--net/ieee80211/softmac/ieee80211softmac_auth.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/net/ieee80211/softmac/ieee80211softmac_auth.c b/net/ieee80211/softmac/ieee80211softmac_auth.c
index a53a751d0702..1a96c2572578 100644
--- a/net/ieee80211/softmac/ieee80211softmac_auth.c
+++ b/net/ieee80211/softmac/ieee80211softmac_auth.c
@@ -178,11 +178,11 @@ ieee80211softmac_auth_resp(struct net_device *dev, struct ieee80211_auth *auth)
178 } 178 }
179 179
180 /* Parse the auth packet */ 180 /* Parse the auth packet */
181 switch(auth->algorithm) { 181 switch(le16_to_cpu(auth->algorithm)) {
182 case WLAN_AUTH_OPEN: 182 case WLAN_AUTH_OPEN:
183 /* Check the status code of the response */ 183 /* Check the status code of the response */
184 184
185 switch(auth->status) { 185 switch(le16_to_cpu(auth->status)) {
186 case WLAN_STATUS_SUCCESS: 186 case WLAN_STATUS_SUCCESS:
187 /* Update the status to Authenticated */ 187 /* Update the status to Authenticated */
188 spin_lock_irqsave(&mac->lock, flags); 188 spin_lock_irqsave(&mac->lock, flags);
@@ -210,7 +210,7 @@ ieee80211softmac_auth_resp(struct net_device *dev, struct ieee80211_auth *auth)
210 break; 210 break;
211 case WLAN_AUTH_SHARED_KEY: 211 case WLAN_AUTH_SHARED_KEY:
212 /* Figure out where we are in the process */ 212 /* Figure out where we are in the process */
213 switch(auth->transaction) { 213 switch(le16_to_cpu(auth->transaction)) {
214 case IEEE80211SOFTMAC_AUTH_SHARED_CHALLENGE: 214 case IEEE80211SOFTMAC_AUTH_SHARED_CHALLENGE:
215 /* Check to make sure we have a challenge IE */ 215 /* Check to make sure we have a challenge IE */
216 data = (u8 *)auth->info_element; 216 data = (u8 *)auth->info_element;