diff options
author | Sven Eckelmann <sven@narfation.org> | 2019-08-22 08:55:36 +0200 |
---|---|---|
committer | Simon Wunderlich <sw@simonwunderlich.de> | 2019-08-23 18:20:31 +0200 |
commit | 0ff0f15a32c093381ad1abc06abe85afb561ab28 (patch) | |
tree | 922d1d158866b0c7ab695628ad8a64a8e59be3c3 /fs/fsopen.c | |
parent | a15d56a60760aa9dbe26343b9a0ac5228f35d445 (diff) | |
download | linux-0ff0f15a32c093381ad1abc06abe85afb561ab28.tar.gz linux-0ff0f15a32c093381ad1abc06abe85afb561ab28.tar.bz2 linux-0ff0f15a32c093381ad1abc06abe85afb561ab28.zip |
batman-adv: Only read OGM2 tvlv_len after buffer len check
Multiple batadv_ogm2_packet can be stored in an skbuff. The functions
batadv_v_ogm_send_to_if() uses batadv_v_ogm_aggr_packet() to check if there
is another additional batadv_ogm2_packet in the skb or not before they
continue processing the packet.
The length for such an OGM2 is BATADV_OGM2_HLEN +
batadv_ogm2_packet->tvlv_len. The check must first check that at least
BATADV_OGM2_HLEN bytes are available before it accesses tvlv_len (which is
part of the header. Otherwise it might try read outside of the currently
available skbuff to get the content of tvlv_len.
Fixes: 9323158ef9f4 ("batman-adv: OGMv2 - implement originators logic")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
Diffstat (limited to 'fs/fsopen.c')
0 files changed, 0 insertions, 0 deletions