]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
P2P: Fix handling Service Discovery Response received by GO device
authorShivani Baranwal <quic_shivbara@quicinc.com>
Wed, 21 Dec 2022 06:35:12 +0000 (12:05 +0530)
committerJouni Malinen <j@w1.fi>
Wed, 25 Jan 2023 21:47:33 +0000 (23:47 +0200)
The received Service Discovery Response frame follows the ap_mgmt_rx()
path in P2P GO mode. If gas_query_rx_frame() doesn't process the frame,
call the Public Action frame callbacks if any are registered for further
processing of the RX frame.

Fixes: 9c2b8204e662 ("DPP: Integration for hostapd")
Signed-off-by: Shivani Baranwal <quic_shivbara@quicinc.com>
src/ap/ieee802_11.c

index e53f0dcbe598da4fda743395cd2b37f5f8ffb6e0..8facad369259aa423ba25172f975095ab9536868 100644 (file)
@@ -5330,10 +5330,10 @@ static int handle_action(struct hostapd_data *hapd,
 
                        pos = &mgmt->u.action.u.public_action.action;
                        end = ((const u8 *) mgmt) + len;
-                       gas_query_ap_rx(hapd->gas, mgmt->sa,
-                                       mgmt->u.action.category,
-                                       pos, end - pos, freq);
-                       return 1;
+                       if (gas_query_ap_rx(hapd->gas, mgmt->sa,
+                                           mgmt->u.action.category,
+                                           pos, end - pos, freq) == 0)
+                               return 1;
                }
 #endif /* CONFIG_DPP */
                if (hapd->public_action_cb) {