[PATCH v2 2/2] hostapd: Subscribe management frames for WPA_IF_AP_BSS types

Yogesh Ashok Powar yogeshp
Thu Jan 12 21:49:52 PST 2012


On Thu, Jan 12, 2012 at 05:01:02AM -0800, Johannes Berg wrote:
> On Thu, 2012-01-12 at 17:19 +0530, Yogesh Ashok Powar wrote:
> 
> >  src/drivers/driver_nl80211.c |    6 ++++++
> >  1 files changed, 6 insertions(+), 0 deletions(-)
> > 
> > diff --git a/src/drivers/driver_nl80211.c b/src/drivers/driver_nl80211.c
> > index 69e269c..51087ba 100644
> > --- a/src/drivers/driver_nl80211.c
> > +++ b/src/drivers/driver_nl80211.c
> > @@ -7783,6 +7783,10 @@ static int wpa_driver_nl80211_if_add(void *priv, enum wpa_driver_if_type type,
> >  		if (drv_priv)
> >  			*drv_priv = new_bss;
> >  		nl80211_init_bss(new_bss);
> > +
> > +		/* Subscribe management frames for this WPA_IF_AP_BSS */
> > +		if (nl80211_setup_ap(new_bss))
> > +			return -1;
> 
> Hm, another thing just occurred to me -- will this add another fd to the
> monitor interface or something? IOW -- what happens when this runs w/
> monitor interfaces.
> 
If driver needs monitor interface, our current fix ends up calling
nl80211_create_monitor_interface for all the BSSes. But this
create_monitor  function will just increase the monitor_refcount and
will not create more than one monitor interface.

Same is true for nl80211_remove_monitor_interface; i.e., monitor
interface will be deleted only when the refcount is 0.



More information about the Hostap mailing list