batman-adv: Check for alloc errors when preparing TT local data
authorSven Eckelmann <sven@narfation.org>
Wed, 30 Nov 2016 20:47:09 +0000 (21:47 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 15 Dec 2016 16:49:23 +0000 (08:49 -0800)
commit537e42d759aeb833bfc6dbb3711bc45e5fddb308
tree96cbcd2882f6a89cf98aa5f8b124d0aaf427cbc9
parentf03531d091255156cf8c865b969377f01750e97a
batman-adv: Check for alloc errors when preparing TT local data

commit c2d0f48a13e53b4747704c9e692f5e765e52041a upstream.

batadv_tt_prepare_tvlv_local_data can fail to allocate the memory for the
new TVLV block. The caller is informed about this problem with the returned
length of 0. Not checking this value results in an invalid memory access
when either tt_data or tt_change is accessed.

Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Fixes: 7ea7b4a14275 ("batman-adv: make the TT CRC logic VLAN specific")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/batman-adv/translation-table.c