summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2023-03-01 12:09:29 +0200
committerJohannes Berg <johannes.berg@intel.com>2023-03-10 11:46:22 +0100
commitf624bb6fad23df3270580b4fcef415c6e7bf7705 (patch)
tree331684e004dc63232cc9cf0485a1e02395121b19
parent44889ba56cbb3d51154660ccd15818bc77276696 (diff)
downloadlinux-stable-f624bb6fad23df3270580b4fcef415c6e7bf7705.tar.gz
linux-stable-f624bb6fad23df3270580b4fcef415c6e7bf7705.tar.bz2
linux-stable-f624bb6fad23df3270580b4fcef415c6e7bf7705.zip
wifi: nl80211: fix NULL-ptr deref in offchan check
If, e.g. in AP mode, the link was already created by userspace but not activated yet, it has a chandef but the chandef isn't valid and has no channel. Check for this and ignore this link. Fixes: 7b0a0e3c3a88 ("wifi: cfg80211: do some rework towards MLO link APIs") Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Gregory Greenman <gregory.greenman@intel.com> Link: https://lore.kernel.org/r/20230301115906.71bd4803fbb9.Iee39c0f6c2d3a59a8227674dc55d52e38b1090cf@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r--net/wireless/nl80211.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c
index 112b4bb009c8..51f6582eff7b 100644
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
@@ -8901,7 +8901,7 @@ static bool cfg80211_off_channel_oper_allowed(struct wireless_dev *wdev,
struct cfg80211_chan_def *chandef;
chandef = wdev_chandef(wdev, link_id);
- if (!chandef)
+ if (!chandef || !chandef->chan)
continue;
/*