From: Johannes Berg <johannes.berg@intel.com>
Date: Fri, 2 Sep 2022 14:12:59 +0000 (+0200)
Subject: wifi: mac80211: prevent VLANs on MLDs
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=ae960ee90bb1c171c2e4c8d2107bb1c693a835dc;p=linux.git

wifi: mac80211: prevent VLANs on MLDs

Do not allow VLANs to be added to AP interfaces that are
MLDs, this isn't going to work because the link structs
aren't propagated to the VLAN interfaces yet.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Link: https://lore.kernel.org/r/20220902161144.8c88531146e9.If2ef9a3b138d4f16ed2fda91c852da156bdf5e4d@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---

diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
index 14505278073a1..7d4a1b0cee735 100644
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
@@ -296,6 +296,11 @@ static int ieee80211_check_concurrent_iface(struct ieee80211_sub_if_data *sdata,
 							nsdata->vif.type))
 				return -ENOTUNIQ;
 
+			/* No support for VLAN with MLO yet */
+			if (iftype == NL80211_IFTYPE_AP_VLAN &&
+			    nsdata->wdev.use_4addr)
+				return -EOPNOTSUPP;
+
 			/*
 			 * can only add VLANs to enabled APs
 			 */