From: Johannes Berg [mailto:johan...@sipsolutions.net] 
Sent: Tuesday, January 27, 2015 1:01 PM

> On Tue, 2015-01-27 at 12:50 +0200, Dedy Lansky wrote:
> 
> > > > @@ -896,6 +949,7 @@ cfg80211_inform_bss_width(struct wiphy *wiphy,
> > > >         struct cfg80211_bss_ies *ies;
> > > >         struct ieee80211_channel *channel;
> > > >         struct cfg80211_internal_bss tmp = {}, *res;
> > > > +       int bss_type;
> > > 
> > > enum.
> > > 
> > > Except that you actually forgot to store the BSS type ...
> > > 
> > > Actually - you didn't add it to the bss struct, but to wdev? Why is it 
> > > needed there?? I don't see you using it?
> > 
> > wdev->bss_type refers to the BSS that we are connecting/connected to (Maybe 
> > rename to "conn_bss_type"?).
> > This member is used in sme.c. It was introduced because once the connect is 
> > complete and driver calls cfg80211_connect_result(), cfg needs to find the 
> > BSS being connected to.
> 
> Ok I was thinking you were adding it to struct cfg80211_bss. Wouldn't that 
> make a bit more sense? Of course it can also be derived from 
> cfg80211_bss::channel and cfg80211_bss::capability, your call.
> 
> However, it doesn't seem that you need it in wdev if you have it there inside 
> wdev->current_bss?

current_bss is set later.

inside __cfg80211_connect_result(), we look for the BSS being connected to:
  bss = cfg80211_get_bss(..., bssid, wdev->bss_type, ...)
only after that, current_bss is set to this BSS:
  wdev->current_bss = bss_from_pub(bss);

> 
> johannes


--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to