vlib: vlib_get_node_by_name fails via API 50/28650/2
authorNathan Skrzypczak <nathan.skrzypczak@gmail.com>
Thu, 3 Sep 2020 09:37:56 +0000 (11:37 +0200)
committerDamjan Marion <dmarion@me.com>
Sat, 5 Sep 2020 08:43:44 +0000 (08:43 +0000)
Type: fix

Calling vlib_get_node_by_name via the VPE api
doesn't work due to hash weirdness. Haven't
gotten around the real cause of this. But this
fixes it.

Change-Id: I89f95dba2bcd9573b8f1f435e063e9dd57f9ca93
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
src/vlib/node.c

index ab3574b..119b471 100644 (file)
@@ -47,8 +47,7 @@ vlib_get_node_by_name (vlib_main_t * vm, u8 * name)
   vlib_node_main_t *nm = &vm->node_main;
   uword *p;
   u8 *key = name;
-  if (!clib_mem_is_heap_object (vec_header (key, 0)))
-    key = format (0, "%s", key);
+  key = format (0, "%s", key);
   p = hash_get (nm->node_by_name, key);
   if (key != name)
     vec_free (key);