John,

Please apply Jean's patch to wireless-2.6. It should apply cleanly to the 
version you pushed earlier
today (8/30). I have compiled and tested. For complete operation with WE-21, it 
also needs the patch
entitled [PATCH 2.6.18] WE-21 support (core API) at
(http://www.spinics.net/lists/netdev/msg13599.html). It works without that 
second patch, just at WE-20.

Thanks,

Larry

-------------------

Patch to update bcm43xx-SoftMAC for WE-21.

Signed-off-by: Jean Tourrilhes <[EMAIL PROTECTED]>
Signed-off-by: Michael Buesch <[EMAIL PROTECTED]>
Signed-off-by: Larry Finger <[EMAIL PROTECTED]>

-------------------------------------------------------------

diff -u a/net/ieee80211/softmac/ieee80211softmac_wx.c 
b/net/ieee80211/softmac/ieee80211softmac_wx.c
--- a/net/ieee80211/softmac/ieee80211softmac_wx.c       2006-08-29 
14:45:56.000000000 -0700
+++ b/net/ieee80211/softmac/ieee80211softmac_wx.c       2006-08-30 
14:56:35.000000000 -0700
@@ -63,6 +63,12 @@ ieee80211softmac_wx_get_scan_results(str
 }
 EXPORT_SYMBOL_GPL(ieee80211softmac_wx_get_scan_results);

+#if WIRELESS_EXT > 20
+#define IW_ESSID_FIX   0
+#else
+#define IW_ESSID_FIX   1
+#endif
+
 int
 ieee80211softmac_wx_set_essid(struct net_device *net_dev,
                              struct iw_request_info *info,
@@ -80,10 +86,10 @@ ieee80211softmac_wx_set_essid(struct net
         * If it's our network, ignore the change, we're already doing it!
         */
        if((sm->associnfo.associating || sm->associated) &&
-          (data->essid.flags && data->essid.length && extra)) {
+          (data->essid.flags && data->essid.length)) {
                /* Get the associating network */
                n = ieee80211softmac_get_network_by_bssid(sm, 
sm->associnfo.bssid);
-               if(n && n->essid.len == (data->essid.length - 1) &&
+               if(n && n->essid.len == (data->essid.length - IW_ESSID_FIX) &&
                   !memcmp(n->essid.data, extra, n->essid.len)) {
                        dprintk(KERN_INFO PFX "Already associating or 
associated to "MAC_FMT"\n",
                                MAC_ARG(sm->associnfo.bssid));
@@ -109,8 +115,8 @@ ieee80211softmac_wx_set_essid(struct net
        sm->associnfo.static_essid = 0;
        sm->associnfo.assoc_wait = 0;

-       if (data->essid.flags && data->essid.length && extra /*required?*/) {
-               length = min(data->essid.length - 1, IW_ESSID_MAX_SIZE);
+       if (data->essid.flags && data->essid.length) {
+               length = min((int) data->essid.length - IW_ESSID_FIX, 
IW_ESSID_MAX_SIZE);
                if (length) {
                        memcpy(sm->associnfo.req_essid.data, extra, length);
                        sm->associnfo.static_essid = 1;
diff -u a/drivers/net/wireless/bcm43xx/bcm43xx_wx.c 
b/drivers/net/wireless/bcm43xx/bcm43xx_wx.c
--- a/drivers/net/wireless/bcm43xx/bcm43xx_wx.c 2006-08-29 14:46:08.000000000 
-0700
+++ b/drivers/net/wireless/bcm43xx/bcm43xx_wx.c 2006-08-30 14:57:31.000000000 
-0700
@@ -334,7 +334,11 @@ static int bcm43xx_wx_get_nick(struct ne
        size_t len;

        mutex_lock(&bcm->mutex);
+#if WIRELESS_EXT > 20
+       len = strlen(bcm->nick);
+#else
        len = strlen(bcm->nick) + 1;
+#endif
        memcpy(extra, bcm->nick, len);
        data->data.length = (__u16)len;
        data->data.flags = 1;

=======

-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to