wifi: mac80211: clean up FILS discovery change flags handling
authorJohannes Berg <johannes.berg@intel.com>
Mon, 29 Jan 2024 18:57:39 +0000 (19:57 +0100)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 2 Feb 2024 13:20:42 +0000 (14:20 +0100)
It doesn't make sense to return BSS change flags in an int, as
they're a bigger type. For this particular function it still
works OK, but clean it up to avoid future errors (or copying
this code in a broken way.)

Reviewed-by: Jeff Johnson <quic_jjohnson@quicinc.com>
Link: https://msgid.link/20240129195739.e340a7d5e7c6.I1dfcca32d43dce903494a2c474844491682671b4@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/cfg.c

index dd237081dbe336cbe135f90077d210ab0a5a800c..2830ddac45b2e21b67b0de5d6a134900f477279d 100644 (file)
@@ -953,7 +953,8 @@ ieee80211_set_probe_resp(struct ieee80211_sub_if_data *sdata,
 static int ieee80211_set_fils_discovery(struct ieee80211_sub_if_data *sdata,
                                        struct cfg80211_fils_discovery *params,
                                        struct ieee80211_link_data *link,
-                                       struct ieee80211_bss_conf *link_conf)
+                                       struct ieee80211_bss_conf *link_conf,
+                                       u64 *changed)
 {
        struct fils_discovery_data *new, *old = NULL;
        struct ieee80211_fils_discovery *fd;
@@ -980,7 +981,8 @@ static int ieee80211_set_fils_discovery(struct ieee80211_sub_if_data *sdata,
                RCU_INIT_POINTER(link->u.ap.fils_discovery, NULL);
        }
 
-       return BSS_CHANGED_FILS_DISCOVERY;
+       *changed |= BSS_CHANGED_FILS_DISCOVERY;
+       return 0;
 }
 
 static int
@@ -1443,10 +1445,9 @@ static int ieee80211_start_ap(struct wiphy *wiphy, struct net_device *dev,
                goto error;
 
        err = ieee80211_set_fils_discovery(sdata, &params->fils_discovery,
-                                          link, link_conf);
+                                          link, link_conf, &changed);
        if (err < 0)
                goto error;
-       changed |= err;
 
        err = ieee80211_set_unsol_bcast_probe_resp(sdata,
                                                   &params->unsol_bcast_probe_resp,
@@ -1518,10 +1519,9 @@ static int ieee80211_change_beacon(struct wiphy *wiphy, struct net_device *dev,
                return err;
 
        err = ieee80211_set_fils_discovery(sdata, &params->fils_discovery,
-                                          link, link_conf);
+                                          link, link_conf, &changed);
        if (err < 0)
                return err;
-       changed |= err;
 
        err = ieee80211_set_unsol_bcast_probe_resp(sdata,
                                                   &params->unsol_bcast_probe_resp,