3
0
mirror of https://git.kernel.org/pub/scm/network/wireless/iwd.git synced 2024-11-22 14:49:24 +01:00

netdev: check iftype in channel switch event

Some drivers send this event when starting AP mode which means
the handshake object is NULL, causing a crash.
This commit is contained in:
James Prestwood 2023-02-23 10:14:17 -08:00 committed by Denis Kenzior
parent 95652a30d1
commit c7034aa41b

View File

@ -5170,8 +5170,12 @@ static void netdev_send_sa_query_delay(struct l_timeout *timeout,
static void netdev_channel_switch_event(struct l_genl_msg *msg, static void netdev_channel_switch_event(struct l_genl_msg *msg,
struct netdev *netdev) struct netdev *netdev)
{ {
_auto_(l_free) struct band_chandef *chandef = _auto_(l_free) struct band_chandef *chandef = NULL;
l_new(struct band_chandef, 1);
if (netdev->type != NL80211_IFTYPE_STATION)
return;
chandef = l_new(struct band_chandef, 1);
if (nl80211_parse_chandef(msg, chandef) < 0) { if (nl80211_parse_chandef(msg, chandef) < 0) {
l_debug("Couldn't parse operating channel info."); l_debug("Couldn't parse operating channel info.");