android_kernel_motorola_sm6375/net/mac80211
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Pavel Skripkin 4d2e5de071 mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh
commit 8b5cb7e41d9d77ffca036b0239177de123394a55 upstream.

Syzbot hit NULL deref in rhashtable_free_and_destroy(). The problem was
in mesh_paths and mpp_paths being NULL.

mesh_pathtbl_init() could fail in case of memory allocation failure, but
nobody cared, since ieee80211_mesh_init_sdata() returns void. It led to
leaving 2 pointers as NULL. Syzbot has found null deref on exit path,
but it could happen anywhere else, because code assumes these pointers are
valid.

Since all ieee80211_*_setup_sdata functions are void and do not fail,
let's embedd mesh_paths and mpp_paths into parent struct to avoid
adding error handling on higher levels and follow the pattern of others
setup_sdata functions

Fixes: 60854fd945 ("mac80211: mesh: convert path table to rhashtable")
Reported-and-tested-by: syzbot+860268315ba86ea6b96b@syzkaller.appspotmail.com
Signed-off-by: Pavel Skripkin <paskripkin@gmail.com>
Link: https://lore.kernel.org/r/20211230195547.23977-1-paskripkin@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
[pchelkin@ispras.ru: adapt a comment spell fixing issue]
Signed-off-by: Fedor Pchelkin <pchelkin@ispras.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-25 11:53:26 +01:00
..
aead_api.c
aead_api.h
aes_ccm.h
aes_cmac.c
aes_cmac.h
aes_gcm.h
aes_gmac.c
aes_gmac.h
agg-rx.c mac80211: fix lookup when adding AddBA extension element 2021-12-22 09:29:37 +01:00
agg-tx.c mac80211: refuse aggregations sessions before authorized 2022-03-19 13:40:16 +01:00
cfg.c wifi: mac80211: allow bw change during channel switch in mesh 2022-10-26 13:22:22 +02:00
chan.c wifi: mac80211: fix use-after-free in chanctx code 2022-06-14 18:11:44 +02:00
debug.h
debugfs.c
debugfs.h
debugfs_key.c
debugfs_key.h
debugfs_netdev.c
debugfs_netdev.h
debugfs_sta.c
debugfs_sta.h
driver-ops.c
driver-ops.h mac80211: mark TX-during-stop for TX in in_reconfig 2021-12-22 09:29:34 +01:00
ethtool.c
fils_aead.c
fils_aead.h
he.c
ht.c
ibss.c wifi: mac80211: Don't finalize CSA in IBSS mode if state is disconnected 2022-09-15 12:04:53 +02:00
ieee80211_i.h mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh 2023-02-25 11:53:26 +01:00
iface.c mac80211: Fix monitor MTU limit so that A-MSDUs get through 2021-09-22 12:26:32 +02:00
Kconfig
key.c
key.h
led.c
led.h
main.c wifi: mac80211: fix memory free error when registering wiphy fail 2022-12-08 11:22:56 +01:00
Makefile
mesh.c
mesh.h mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh 2023-02-25 11:53:26 +01:00
mesh_hwmp.c
mesh_pathtbl.c mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh 2023-02-25 11:53:26 +01:00
mesh_plink.c
mesh_ps.c mac80211: mesh: fix potentially unaligned access 2021-10-06 15:42:32 +02:00
mesh_sync.c
michael.c
michael.h
mlme.c wifi: mac80211: fix MBSSID parsing use-after-free 2022-10-17 17:24:32 +02:00
ocb.c
offchannel.c
pm.c
rate.c
rate.h
rc80211_minstrel.c
rc80211_minstrel.h
rc80211_minstrel_debugfs.c
rc80211_minstrel_ht.c
rc80211_minstrel_ht.h
rc80211_minstrel_ht_debugfs.c
rx.c mac80211: fix rx reordering with non explicit / psmp ack policy 2022-05-25 09:14:37 +02:00
scan.c wifi: mac80211: fix MBSSID parsing use-after-free 2022-10-17 17:24:32 +02:00
spectmgmt.c
sta_info.c
sta_info.h mac80211: fix regression in SSN handling of addba tx 2021-12-22 09:29:40 +01:00
status.c
tdls.c
tkip.c
tkip.h
trace.c
trace.h
trace_msg.h
tx.c mac80211: limit injected vht mcs/nss in ieee80211_parse_tx_radiotap 2021-10-06 15:42:32 +02:00
util.c wifi: mac80211: fix MBSSID parsing use-after-free 2022-10-17 17:24:32 +02:00
vht.c
wep.c
wep.h
wme.c wifi: mac80211: fix queue selection for mesh/OCB interfaces 2022-07-21 20:59:17 +02:00
wme.h
wpa.c mac80211: fix use-after-free in CCMP/GCMP RX 2021-10-06 15:42:31 +02:00
wpa.h