api: fix use-after-free 08/22408/3
authorBenoît Ganne <bganne@cisco.com>
Wed, 11 Sep 2019 14:43:44 +0000 (16:43 +0200)
committerDave Barach <openvpp@barachs.net>
Mon, 30 Sep 2019 16:12:30 +0000 (16:12 +0000)
Type: fix

Change-Id: I2a599c22d5770587fdd419e5d212c8527054d2e9
Signed-off-by: Benoît Ganne <bganne@cisco.com>
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,