wifi: mac80211: mesh_plink: fix matches_local logic
authorJohannes Berg <johannes.berg@intel.com>
Mon, 11 Dec 2023 07:05:31 +0000 (09:05 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 1 Jan 2024 12:42:27 +0000 (12:42 +0000)
[ Upstream commit 8c386b166e2517cf3a123018e77941ec22625d0f ]

During refactoring the "else" here got lost, add it back.

Fixes: c99a89edb106 ("mac80211: factor out plink event gathering")
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://msgid.link/20231211085121.795480fa0e0b.I017d501196a5bbdcd9afd33338d342d6fe1edd79@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/mac80211/mesh_plink.c

index 5c8a3ff..cc62c2a 100644 (file)
@@ -1064,8 +1064,8 @@ mesh_plink_get_event(struct ieee80211_sub_if_data *sdata,
        case WLAN_SP_MESH_PEERING_OPEN:
                if (!matches_local)
                        event = OPN_RJCT;
-               if (!mesh_plink_free_count(sdata) ||
-                   (sta->mesh->plid && sta->mesh->plid != plid))
+               else if (!mesh_plink_free_count(sdata) ||
+                        (sta->mesh->plid && sta->mesh->plid != plid))
                        event = OPN_IGNR;
                else
                        event = OPN_ACPT;
@@ -1073,9 +1073,9 @@ mesh_plink_get_event(struct ieee80211_sub_if_data *sdata,
        case WLAN_SP_MESH_PEERING_CONFIRM:
                if (!matches_local)
                        event = CNF_RJCT;
-               if (!mesh_plink_free_count(sdata) ||
-                   sta->mesh->llid != llid ||
-                   (sta->mesh->plid && sta->mesh->plid != plid))
+               else if (!mesh_plink_free_count(sdata) ||
+                        sta->mesh->llid != llid ||
+                        (sta->mesh->plid && sta->mesh->plid != plid))
                        event = CNF_IGNR;
                else
                        event = CNF_ACPT;