Re: [PATCH 8/8 v3] mac80211: re-add HT disabling

Johannes Berg
2009-06-30T13:38:00Z

[-- Attachment #1: Type: text/plain, Size: 1844 bytes --]

On Tue, 2009-06-30 at 18:55 +0530, Vasanthakumar Thiagarajan wrote:
> On Tue, Jun 30, 2009 at 05:22:53PM +0530, Johannes Berg wrote:
> > The IEEE80211_STA_TKIP_WEP_USED flag is used internally to
> > disable HT when WEP or TKIP are used. Now that cfg80211 is
> > giving us the required information, we can set the flag
> > appropriately again.
> >
> > Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
> > ---
> > net/mac80211/cfg.c | 15 ++++++++++++++-
> > 1 file changed, 14 insertions(+), 1 deletion(-)
> >
> > --- wireless-testing.orig/net/mac80211/cfg.c 2009-06-30 13:25:43.000000000 +0200
> > +++ wireless-testing/net/mac80211/cfg.c 2009-06-30 13:25:45.000000000 +0200
> > @@ -1228,7 +1228,7 @@ static int ieee80211_assoc(struct wiphy
> > struct cfg80211_assoc_request *req)
> > {
> > struct ieee80211_sub_if_data *sdata;
> > - int ret;
> > + int ret, i;
> >
> > sdata = IEEE80211_DEV_TO_SUB_IF(dev);
> >
> > @@ -1236,6 +1236,19 @@ static int ieee80211_assoc(struct wiphy
> > !(sdata->u.mgd.flags & IEEE80211_STA_AUTHENTICATED))
> > return -ENOLINK; /* not authenticated */
> >
> > + sdata->u.mgd.flags &= ~IEEE80211_STA_TKIP_WEP_USED;
> > +
> > + if (req->crypto.cipher_group == WLAN_CIPHER_SUITE_WEP40 ||
> > + req->crypto.cipher_group == WLAN_CIPHER_SUITE_TKIP ||
> > + req->crypto.cipher_group == WLAN_CIPHER_SUITE_WEP104)
> > + sdata->u.mgd.flags |= IEEE80211_STA_TKIP_WEP_USED;
>
> No, we have to disable HT only when WEP/TKIP is used as pairwise,
> not used as group cipher.

I thought it was both, but I guess group doesn't actually matter. OTOH,
this seems to match the standard better (HT STA is not allowed to use
TKIP/WEP)?

johannes

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 801 bytes --]