summaryrefslogtreecommitdiff
path: root/include/linux/timerqueue.h
diff options
context:
space:
mode:
authorSven Eckelmann <sven@narfation.org>2026-10-03 00:00:51 +0200
committerSven Eckelmann <sven@narfation.org>2026-10-30 10:11:27 +0100
commita137095419b4be0b204a11af4f1cea872ea262e9 (patch)
tree8284fe7d33f34e43755a9414be15c30abc483c51 /include/linux/timerqueue.h
parented7a0dfdd370acb48be7a281df732c1bebcc7f1d (diff)
batman-adv: tt: limit local table to single TVLV response size
The reservation of local TT entries and VLANs only limits the local table by (int) packet_size_max. But the full table response is sent as a single unicast TVLV packet whose tvlv_len (covering the TVLV header and the TT TVLV) is only 16 bit wide. The reservation must therefore be capped at the minimum of both the packet_size_max and the maximum theoretic table response. The size limit was already missing the 16 bit tvlv_len cap since the original packet_size_max check was introduced. But this check was only reachable with fragmentation disabled and a hard interface MTU larger than the maximum unicast TVLV packet. In this case, batadv_tt_prepare_tvlv_local_data() refuses to build the full table response and no oversized packet is created. It is therefore mostly affecting the commit 85fb027f611b ("batman-adv: tt: reject VLAN/TT entries before reaching size limit"), which should prevent this kind of overallocation. Reported-by: Sashiko <sashiko-bot@kernel.org> Closes: https://netdev-ai.bots.linux.dev/sashiko/#/patchset/20260930094558.3723766-2-sw%40simonwunderlich.de?part=8 Fixes: a19d3d85e1b8 ("batman-adv: limit local translation table max size") Cc: <stable+noautosel@kernel.org> # requires 85fb027f611b, old behavior only affects MTU > 64KiB without fragmentation Signed-off-by: Sven Eckelmann <sven@narfation.org>
Diffstat (limited to 'include/linux/timerqueue.h')
0 files changed, 0 insertions, 0 deletions