[commits] [batman-adv] maint, master: batman-adv: fix for leaked TVLV handler. (87445d81)

postmaster at open-mesh.org postmaster at open-mesh.org
Wed May 22 19:51:03 CEST 2019


Repository : ssh://git@open-mesh.org/batman-adv

On branches: maint,master

>---------------------------------------------------------------

commit 87445d81c360a5f9833546114e98ffd2c1fd3a4d
Author: Jeremy Sowden <jeremy at azazel.net>
Date:   Tue May 21 20:58:57 2019 +0100

    batman-adv: fix for leaked TVLV handler.
    
    A handler for BATADV_TVLV_ROAM was being registered when the
    translation-table was initialized, but not unregistered when the
    translation-table was freed.  Unregister it.
    
    Fixes: 3de4e64df0f1 ("batman-adv: tvlv - convert roaming adv packet to use tvlv unicast packets")
    Reported-by: syzbot+d454a826e670502484b8 at syzkaller.appspotmail.com
    Signed-off-by: Jeremy Sowden <jeremy at azazel.net>
    Signed-off-by: Sven Eckelmann <sven at narfation.org


>---------------------------------------------------------------

87445d81c360a5f9833546114e98ffd2c1fd3a4d
 net/batman-adv/translation-table.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/net/batman-adv/translation-table.c b/net/batman-adv/translation-table.c
index 26c4e249..abad64eb 100644
--- a/net/batman-adv/translation-table.c
+++ b/net/batman-adv/translation-table.c
@@ -3826,6 +3826,8 @@ static void batadv_tt_purge(struct work_struct *work)
  */
 void batadv_tt_free(struct batadv_priv *bat_priv)
 {
+	batadv_tvlv_handler_unregister(bat_priv, BATADV_TVLV_ROAM, 1);
+
 	batadv_tvlv_container_unregister(bat_priv, BATADV_TVLV_TT, 1);
 	batadv_tvlv_handler_unregister(bat_priv, BATADV_TVLV_TT, 1);
 



More information about the commits mailing list