Subject: [patch] d80211: fix usage of capability field for ibss mode

From: David Kimdon <[email-masked]>
Date: Sun, 12 Nov 2006 10:15:05 -0800

Thanks to sparse for pointing out these errors.

'capability' is stored in struct ieee80211_sta_bss in host byte order, do not
swap bytes.

Signed-off-by: David Kimdon <[email-masked]>

Index: wireless-dev/net/d80211/ieee80211_sta.c
===================================================================
--- wireless-dev.orig/net/d80211/ieee80211_sta.c	2006-11-05 14:53:19.602141912 -0800
+++ wireless-dev/net/d80211/ieee80211_sta.c	2006-11-05 15:12:52.937767784 -0800
@@ -1984,7 +1984,7 @@
 
 	sdata = IEEE80211_DEV_TO_SUB_IF(dev);
 	sdata->drop_unencrypted = bss->capability &
-		cpu_to_le16(WLAN_CAPABILITY_PRIVACY) ? 1 : 0;
+		WLAN_CAPABILITY_PRIVACY ? 1 : 0;
 
 	memset(&rq, 0, sizeof(rq));
 	rq.m = bss->freq * 100000;
@@ -2153,9 +2153,9 @@
 	bss->channel = local->conf.channel;
 	bss->freq = local->conf.freq;
 	bss->last_update = jiffies;
-	bss->capability = cpu_to_le16(WLAN_CAPABILITY_IBSS);
+	bss->capability = WLAN_CAPABILITY_IBSS;
 	if (sdata->default_key) {
-		bss->capability |= cpu_to_le16(WLAN_CAPABILITY_PRIVACY);
+		bss->capability |= WLAN_CAPABILITY_PRIVACY;
 	} else
 		sdata->drop_unencrypted = 0;
 	bss->supp_rates_len = local->num_curr_rates;

--