[PATCH] libertas: implement new scanning logic

David Woodhouse dwmw2 at infradead.org
Fri Dec 7 13:19:33 EST 2007


On Fri, 2007-12-07 at 13:09 -0500, Dan Williams wrote:
> On Fri, 2007-12-07 at 18:05 +0000, David Woodhouse wrote:
> > On Fri, 2007-12-07 at 12:57 -0500, Dan Williams wrote:
> > > Yeah, go ahead.  I got distracted because of changes in > 2.6.23 kernels
> > > that cause the driver not to build there, and haven't chased them down
> > > yet.
> > 
> > Hm, it's building for me. Where can I get hold of hardware?
> 
> Either get some from Manas, or find me.

I'll be in Boston next week. I'll try to find you.

Btw, is there any particular reason we're setting IW_ENCODE_NOKEY in
lbs_get_encode()? Looks like we aren't returning it for WPA, but we
could return it in WEP modes. This seems to work...

diff --git a/drivers/net/wireless/libertas/wext.c b/drivers/net/wireless/libertas/wext.c
index b8c93c0..1af140b 100644
--- a/drivers/net/wireless/libertas/wext.c
+++ b/drivers/net/wireless/libertas/wext.c
@@ -1122,14 +1122,6 @@ static int lbs_get_encode(struct net_device *dev,
 		break;
 	}
 
-	if (   adapter->secinfo.wep_enabled
-	    || adapter->secinfo.WPAenabled
-	    || adapter->secinfo.WPA2enabled) {
-		dwrq->flags &= ~IW_ENCODE_DISABLED;
-	} else {
-		dwrq->flags |= IW_ENCODE_DISABLED;
-	}
-
 	memset(extra, 0, 16);
 
 	mutex_lock(&adapter->lock);
@@ -1150,14 +1142,13 @@ static int lbs_get_encode(struct net_device *dev,
 		   || (adapter->secinfo.WPA2enabled)) {
 		/* return WPA enabled */
 		dwrq->flags &= ~IW_ENCODE_DISABLED;
+		dwrq->flags |= IW_ENCODE_NOKEY;
 	} else {
 		dwrq->flags |= IW_ENCODE_DISABLED;
 	}
 
 	mutex_unlock(&adapter->lock);
 
-	dwrq->flags |= IW_ENCODE_NOKEY;
-
 	lbs_deb_wext("key: %02x:%02x:%02x:%02x:%02x:%02x, keylen %d\n",
 	       extra[0], extra[1], extra[2],
 	       extra[3], extra[4], extra[5], dwrq->length);


-- 
dwmw2




More information about the libertas-dev mailing list