linux/net/batman-adv
Sven Eckelmann 303216e76d batman-adv: Avoid uninitialized chaddr when handling DHCP
The gateway client code can try to optimize the delivery of DHCP packets to
avoid broadcasting them through the whole mesh. But also transmissions to
the client can be optimized by looking up the destination via the chaddr of
the DHCP packet.

But the chaddr is currently only done when chaddr is fully inside the
non-paged area of the skbuff. Otherwise it will not be initialized and the
unoptimized path should have been taken.

But the implementation didn't handle this correctly. It didn't retrieve the
correct chaddr but still tried to perform the TT lookup with this
uninitialized memory.

Reported-by: syzbot+ab16e463b903f5a37036@syzkaller.appspotmail.com
Fixes: 6c413b1c22 ("batman-adv: send every DHCP packet as bat-unicast")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Acked-by: Antonio Quartulli <a@unstable.cc>
Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
2020-08-18 19:40:03 +02:00
..
bat_algo.c batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
bat_algo.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
bat_iv_ogm.c batman-adv: Introduce a configurable per interface hop penalty 2020-06-26 10:37:11 +02:00
bat_iv_ogm.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
bat_v_elp.c batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
bat_v_elp.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
bat_v_ogm.c batman-adv: Introduce a configurable per interface hop penalty 2020-06-26 10:37:11 +02:00
bat_v_ogm.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
bat_v.c batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
bat_v.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
bitarray.c batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
bitarray.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
bridge_loop_avoidance.c batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
bridge_loop_avoidance.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
debugfs.c batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
debugfs.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
distributed-arp-table.c batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
distributed-arp-table.h batman-adv: remove unused inline function batadv_arp_change_timeout 2020-04-24 15:22:41 +02:00
fragmentation.c batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
fragmentation.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
gateway_client.c batman-adv: Avoid uninitialized chaddr when handling DHCP 2020-08-18 19:40:03 +02:00
gateway_client.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
gateway_common.c batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
gateway_common.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
hard-interface.c batman-adv: Introduce a configurable per interface hop penalty 2020-06-26 10:37:11 +02:00
hard-interface.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
hash.c batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
hash.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
icmp_socket.c batadv_socket_read(): get rid of pointless access_ok() 2020-05-20 20:31:33 -04:00
icmp_socket.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
Kconfig batman-adv: Disable CONFIG_BATMAN_ADV_SYSFS by default 2020-01-01 00:57:07 +01:00
log.c batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
log.h batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
main.c batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
main.h batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
Makefile batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
multicast.c batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
multicast.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
netlink.c batman-adv: Introduce a configurable per interface hop penalty 2020-06-26 10:37:11 +02:00
netlink.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
network-coding.c batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
network-coding.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
originator.c batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
originator.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
routing.c batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
routing.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
send.c batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
send.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
soft-interface.c batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
soft-interface.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
sysfs.c batman-adv: Fix refcnt leak in batadv_store_throughput_override 2020-04-21 10:08:05 +02:00
sysfs.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
tp_meter.c batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
tp_meter.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
trace.c batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
trace.h batman-adv: trace: Drop unneeded types.h include 2020-04-21 10:07:31 +02:00
translation-table.c batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
translation-table.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
tvlv.c batman-adv: Fix typos and grammar in documentation 2020-06-26 10:36:30 +02:00
tvlv.h batman-adv: Update copyright years for 2020 2020-01-01 00:00:33 +01:00
types.h batman-adv: Introduce a configurable per interface hop penalty 2020-06-26 10:37:11 +02:00