mirror-linux/net/batman-adv
Sven Eckelmann f80d3d98d2
batman-adv: bla: avoid NULL-ptr deref for claim via dropped interface
Without rtnl_lock held, a hardif might be retrieved as primary interface of
a meshif, but then (while operating on this interface) getting decoupled
from the mesh interface. In this case, the meshif still exists but the
pointer from the primary hardif to the meshif is set to NULL.

The mesh_iface must be checked first to be non-NULL before continuing to
send an ARP request using meshif.

Cc: stable@kernel.org
Fixes: 23721387c4 ("batman-adv: add basic bridge loop avoidance code")
Reported-by: Ido Schimmel <idosch@nvidia.com>
Reported-by: syzbot+9fdcc9f05a98a540b816@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=9fdcc9f05a98a540b816
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2026-05-19 10:43:54 +02:00
..
Kconfig batman-adv: use skb_crc32c() instead of skb_seq_read() 2025-10-17 16:30:43 +02:00
Makefile batman-adv: remove network coding support 2025-09-05 15:11:00 +02:00
bat_algo.c batman-adv: store hard_iface as iflink private data 2025-05-31 10:41:11 +02:00
bat_algo.h batman-adv: store hard_iface as iflink private data 2025-05-31 10:41:11 +02:00
bat_iv_ogm.c batman-adv: iv: recover OGM scheduling after forward packet error 2026-05-19 09:09:29 +02:00
bat_iv_ogm.h
bat_v.c batman-adv: store hard_iface as iflink private data 2025-05-31 10:41:11 +02:00
bat_v.h
bat_v_elp.c Here is a batman-adv bugfix: 2026-02-26 19:15:09 -08:00
bat_v_elp.h batman-adv: Drop unmanaged ELP metric worker 2025-01-22 21:46:42 +01:00
bat_v_ogm.c batman-adv: tvlv: abort OGM send on tvlv append failure 2026-05-19 08:16:21 +02:00
bat_v_ogm.h
bitarray.c batman-adv: Use consistent name for mesh interface 2025-02-22 11:36:22 +01:00
bitarray.h
bridge_loop_avoidance.c batman-adv: bla: avoid NULL-ptr deref for claim via dropped interface 2026-05-19 10:43:54 +02:00
bridge_loop_avoidance.h
distributed-arp-table.c batman-adv: dat: handle forward allocation error 2026-05-14 20:01:31 +02:00
distributed-arp-table.h batman-adv: Use consistent name for mesh interface 2025-02-22 11:36:22 +01:00
fragmentation.c batman-adv: fix batadv_skb_is_frag() kernel-doc 2026-05-16 22:15:19 +02:00
fragmentation.h
gateway_client.c batman-adv: clear current gateway during teardown 2026-05-14 18:48:40 +02:00
gateway_client.h
gateway_common.c batman-adv: Use consistent name for mesh interface 2025-02-22 11:36:22 +01:00
gateway_common.h batman-adv: Drop per algo GW section class code 2023-08-14 18:01:21 +02:00
hard-interface.c Here is a batman-adv bugfix: 2026-02-26 19:15:09 -08:00
hard-interface.h batman-adv: Avoid double-rtnl_lock ELP metric worker 2026-02-21 13:01:55 +01:00
hash.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
hash.h
log.c batman-adv: Use consistent name for mesh interface 2025-02-22 11:36:22 +01:00
log.h batman-adv: remove network coding support 2025-09-05 15:11:00 +02:00
main.c batman-adv: stop tp_meter sessions during mesh teardown 2026-05-02 21:58:53 +02:00
main.h batman-adv: Start new development cycle 2025-10-17 16:30:43 +02:00
mesh-interface.c batman-adv: bla: avoid double decrement of bla.num_requests 2026-05-19 09:09:34 +02:00
mesh-interface.h batman-adv: remove includes for extern declarations 2025-09-05 15:11:02 +02:00
multicast.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
multicast.h batman-adv: mcast: implement multicast packet generation 2023-11-14 08:16:34 +01:00
multicast_forw.c batman-adv: Use consistent name for mesh interface 2025-02-22 11:36:22 +01:00
netlink.c batman-adv: remove network coding support 2025-09-05 15:11:00 +02:00
netlink.h batman-adv: remove includes for extern declarations 2025-09-05 15:11:02 +02:00
originator.c batman-adv: mcast: fix use-after-free in orig_node RCU release 2026-05-19 08:44:24 +02:00
originator.h batman-adv: mcast: implement multicast packet reception and forwarding 2023-11-14 08:16:34 +01:00
routing.c batman-adv: remove network coding support 2025-09-05 15:11:00 +02:00
routing.h batman-adv: mcast: implement multicast packet reception and forwarding 2023-11-14 08:16:34 +01:00
send.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
send.h batman-adv: Use consistent name for mesh interface 2025-02-22 11:36:22 +01:00
tp_meter.c batman-adv: tp_meter: avoid role confusion in tp_list 2026-05-19 08:24:30 +02:00
tp_meter.h batman-adv: stop tp_meter sessions during mesh teardown 2026-05-02 21:58:53 +02:00
trace.c
trace.h batman-adv: Use consistent name for mesh interface 2025-02-22 11:36:22 +01:00
translation-table.c batman-adv: tt: prevent TVLV entry number overflow 2026-05-12 08:33:53 +02:00
translation-table.h batman-adv: Use consistent name for mesh interface 2025-02-22 11:36:22 +01:00
tvlv.c batman-adv: tvlv: reject oversized TVLV packets 2026-05-19 08:16:58 +02:00
tvlv.h batman-adv: tvlv: abort OGM send on tvlv append failure 2026-05-19 08:16:21 +02:00
types.h batman-adv: bla: avoid double decrement of bla.num_requests 2026-05-19 09:09:34 +02:00