[PATCH] P2P:Fixing the supplicant crash if a group interface has been removed in the event handler itself

Johannes Berg johannes at sipsolutions.net
Wed May 30 12:27:52 EDT 2012

On Tue, 2012-05-29 at 10:01 +0000, Neeraj Kumar Garg wrote:
> We hit a scenario where a PBC overlap was detected in the context of
> EVENT_SCAN_RESULTS. When in the event handler of do_process_drv_event,
> an overlap is detected, it will cause GROUP-FORMATION-FAILURE and that
> will remove the group interface and then corresponding drv pointer
> from the list global->interfaces will also get removed. (code path
> wpas_p2p_group_delete->wpa_supplicant_remove_iface ->
> wpa_supplicant_deinit_iface -> wpa_drv_deinit
> ->wpa_driver_nl80211_deinit)
> In my opinion it is safe to do break, as the event had an ifidx no.
> and once that has been found, event is completed. There is no need to
> go for checking other interfaces. Plz let me know if my understanding
> is wrong.

No, the event isn't necessary complete. I suspect what's happening is
that we delete the interface we were looking at just now and then the
list gets messed up while we iterate it ...


should help with that.


More information about the HostAP mailing list