api: fix use-after-free 34/22534/3
authorBenoît Ganne <bganne@cisco.com>
Wed, 11 Sep 2019 14:43:44 +0000 (16:43 +0200)
committerAndrew Yourtchenko <ayourtch@gmail.com>
Mon, 7 Oct 2019 13:10:10 +0000 (13:10 +0000)
Type: fix

Change-Id: I2a599c22d5770587fdd419e5d212c8527054d2e9
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit f26b2511cf661d4ebef32c19f944041637ec5907)

src/vlibmemory/memory_api.c

index b87aa76..34fd956 100644 (file)
@@ -319,6 +319,9 @@ vl_api_memclnt_delete_t_handler (vl_api_memclnt_delete_t * mp)
            }
        }
 
+      /* No dangling references, please */
+      *regpp = 0;
+
       /* For horizontal scaling, add a hash table... */
       for (i = 0; i < vec_len (am->vlib_private_rps); i++)
        {
@@ -347,9 +350,6 @@ vl_api_memclnt_delete_t_handler (vl_api_memclnt_delete_t * mp)
            }
        }
 
-      /* No dangling references, please */
-      *regpp = 0;
-
       if (private_registration == 0)
        {
          pool_put_index (am->vl_clients,