]> Git Repo - linux.git/commitdiff
wifi: mac80211: remove redundant ML element check
authorJohannes Berg <[email protected]>
Tue, 2 Jan 2024 19:35:42 +0000 (21:35 +0200)
committerJohannes Berg <[email protected]>
Wed, 3 Jan 2024 14:35:38 +0000 (15:35 +0100)
If "ml_basic" is assigned, we already know that the type
of ML element is basic, so we don't need to check again,
that check can never happen. Simplify the code.

Signed-off-by: Johannes Berg <[email protected]>
Reviewed-by: Gregory Greenman <[email protected]>
Reviewed-by: Ilan Peer <[email protected]>
Signed-off-by: Miri Korenblit <[email protected]>
Link: https://msgid.link/20240102213313.bb9b636e66f6.I7fc0897022142d46f39ac0b912a4f7b0f1b6ea26@changeid
Signed-off-by: Johannes Berg <[email protected]>
net/mac80211/mlme.c

index 9bb0a86139215c2426b63412021c72fbef4844f6..5aef4f3dcbf18e16ae6b75b7a83bd37d147070e6 100644 (file)
@@ -5407,33 +5407,24 @@ static void ieee80211_rx_mgmt_assoc_resp(struct ieee80211_sub_if_data *sdata,
                }
 
                if (ieee80211_vif_is_mld(&sdata->vif)) {
+                       struct ieee80211_mle_basic_common_info *common;
+
                        if (!elems->ml_basic) {
                                sdata_info(sdata,
-                                          "MLO association with %pM but no multi-link element in response!\n",
+                                          "MLO association with %pM but no (basic) multi-link element in response!\n",
                                           assoc_data->ap_addr);
                                goto abandon_assoc;
                        }
 
-                       if (le16_get_bits(elems->ml_basic->control,
-                                         IEEE80211_ML_CONTROL_TYPE) !=
-                                       IEEE80211_ML_CONTROL_TYPE_BASIC) {
+                       common = (void *)elems->ml_basic->variable;
+
+                       if (memcmp(assoc_data->ap_addr,
+                                  common->mld_mac_addr, ETH_ALEN)) {
                                sdata_info(sdata,
-                                          "bad multi-link element (control=0x%x)\n",
-                                          le16_to_cpu(elems->ml_basic->control));
+                                          "AP MLD MAC address mismatch: got %pM expected %pM\n",
+                                          common->mld_mac_addr,
+                                          assoc_data->ap_addr);
                                goto abandon_assoc;
-                       } else {
-                               struct ieee80211_mle_basic_common_info *common;
-
-                               common = (void *)elems->ml_basic->variable;
-
-                               if (memcmp(assoc_data->ap_addr,
-                                          common->mld_mac_addr, ETH_ALEN)) {
-                                       sdata_info(sdata,
-                                                  "AP MLD MAC address mismatch: got %pM expected %pM\n",
-                                                  common->mld_mac_addr,
-                                                  assoc_data->ap_addr);
-                                       goto abandon_assoc;
-                               }
                        }
                }
 
This page took 0.082438 seconds and 4 git commands to generate.