[PATCHv2] DPP: prevent processing dpp action frames when stopped

Michal Kazior kazikcz at gmail.com
Wed Mar 3 10:26:05 GMT 2021


From: Michal Kazior <michal at plume.com>

DPP configurator params can be configured per
interface. DPP listening can also be started and
stopped per interface.

However DPP rx processing was always doomed to
process incomming frames even on interfaces which
were not explicitly started to do DPP listen. This
happened because not only the initial value but
also because the dpp_allowed_roles could never be
reset to 0.

This would result in random failures in
configuring Enrollees when running multiple AP
interfaces if some of these APs happened to not
have DPP configurator params set.

Signed-off-by: Michal Kazior <michal at plume.com>
---
v2:
 * dropped the change from hostapd_dpp_init()

 src/ap/dpp_hostapd.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/ap/dpp_hostapd.c b/src/ap/dpp_hostapd.c
index e1e5a3ac4..da2dfe860 100644
--- a/src/ap/dpp_hostapd.c
+++ b/src/ap/dpp_hostapd.c
@@ -706,6 +706,7 @@ int hostapd_dpp_listen(struct hostapd_data *hapd, const char *cmd)
 
 void hostapd_dpp_listen_stop(struct hostapd_data *hapd)
 {
+	hapd->dpp_allowed_roles = 0;
 	hostapd_drv_dpp_listen(hapd, false);
 	/* TODO: Stop listen operation on non-operating channel */
 }
-- 
2.27.0




More information about the Hostap mailing list