]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
wifi: mac80211: parse unsolicited broadcast probe response data
authorYuvarani V <quic_yuvarani@quicinc.com>
Thu, 10 Jul 2025 05:34:28 +0000 (11:04 +0530)
committerJohannes Berg <johannes.berg@intel.com>
Tue, 15 Jul 2025 09:01:21 +0000 (11:01 +0200)
During commands like channel switch and color change, the updated
unsolicited broadcast probe response template may be provided. However,
this data is not parsed or acted upon in mac80211.

Add support to parse it and set the BSS changed flag
BSS_CHANGED_UNSOL_BCAST_PROBE_RESP so that drivers could take further
action.

Signed-off-by: Yuvarani V <quic_yuvarani@quicinc.com>
Signed-off-by: Aditya Kumar Singh <aditya.kumar.singh@oss.qualcomm.com>
Link: https://patch.msgid.link/20250710-update_unsol_bcast_probe_resp-v2-2-31aca39d3b30@oss.qualcomm.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/cfg.c

index d76643d46150fc0e7ba954d51a784019a1c86085..9ef280f3b55b0b34bde2903804a9d070f5aeb4f9 100644 (file)
@@ -4187,6 +4187,12 @@ __ieee80211_channel_switch(struct wiphy *wiphy, struct net_device *dev,
                goto out;
        }
 
+       err = ieee80211_set_unsol_bcast_probe_resp(sdata,
+                                                  &params->unsol_bcast_probe_resp,
+                                                  link_data, link_conf, &changed);
+       if (err)
+               goto out;
+
        chanctx = container_of(conf, struct ieee80211_chanctx, conf);
 
        ch_switch.timestamp = 0;
@@ -5128,6 +5134,12 @@ ieee80211_color_change(struct wiphy *wiphy, struct net_device *dev,
                goto out;
        }
 
+       err = ieee80211_set_unsol_bcast_probe_resp(sdata,
+                                                  &params->unsol_bcast_probe_resp,
+                                                  link, link_conf, &changed);
+       if (err)
+               goto out;
+
        err = ieee80211_set_color_change_beacon(link, params, &changed);
        if (err)
                goto out;