On Thursday 31 August 2006 02:57, Larry Finger wrote: > 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
Eh, was this useless #if in the original patch I signed-off, too? Because I want to revert my sign-off. :) This #if is useless, because we always deal with only one single WE version in the kernel. #if WIRELESS_EXT will always be true. So remove this and also remove the other #if below. > 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; > > ======= > > -- Greetings Michael. - 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