Error while enabling AP using wpa_supplicant
Jose Blanquicet
blanquicet at gmail.com
Mon Jan 30 08:09:01 PST 2017
Hi Dedy,
On Mon, Jan 30, 2017 at 3:07 PM, Lansky, Dedy wrote:
> Sorry for the late reply. I was on vacation.
Don't worry.
> It seems in your case, device_ap_sme is enabled.
> With that, nl80211_mgmt_subscribe_ap_dev_sme() is called and with previous code there is no beacon registration.
> After the patch, beacon registration is called unconditionally.
>
> I think we need to restrict the call to nl80211_get_wiphy_data_ap() by changing this line:
>
> if (nl80211_get_wiphy_data_ap(bss) == NULL)
> into:
> if (!drv->device_ap_sme && !drv->use_monitor && nl80211_get_wiphy_data_ap(bss) == NULL)
>
> Would appreciate if you can test this on your setup.
I tried what you suggested and it worked for me:
diff --git a/src/drivers/driver_nl80211.c b/src/drivers/driver_nl80211.c
index 6080079..5470312 100644
--- a/src/drivers/driver_nl80211.c
+++ b/src/drivers/driver_nl80211.c
@@ -3783,7 +3783,8 @@ static int wpa_driver_nl80211_set_ap(void *priv,
beacon_set);
if (beacon_set)
cmd = NL80211_CMD_SET_BEACON;
- else if (!nl80211_get_wiphy_data_ap(bss))
+ else if (!drv->device_ap_sme && !drv->use_monitor &&
+ !nl80211_get_wiphy_data_ap(bss))
return -ENOBUFS;
wpa_hexdump(MSG_DEBUG, "nl80211: Beacon head",
What does Jouni think about this solution?
Regards,
Jose Blanquicet
More information about the Hostap
mailing list