diff options
Diffstat (limited to 'lib/table.h')
| -rw-r--r-- | lib/table.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/table.h b/lib/table.h index 78bf5da748..1691a8e20a 100644 --- a/lib/table.h +++ b/lib/table.h @@ -25,6 +25,7 @@ #include "memory.h" DECLARE_MTYPE(ROUTE_TABLE) +DECLARE_MTYPE(ROUTE_NODE) /* * Forward declarations. @@ -61,6 +62,7 @@ struct route_table * Delegate that performs certain functions for this table. */ route_table_delegate_t *delegate; + void (*cleanup)(struct route_table *, struct route_node *); unsigned long count; @@ -157,15 +159,15 @@ extern struct route_node *route_node_get (struct route_table *const, const struct prefix *); extern struct route_node *route_node_lookup (const struct route_table *, const struct prefix *); +extern struct route_node *route_node_lookup_maynull (const struct route_table *, + const struct prefix *); extern struct route_node *route_lock_node (struct route_node *node); extern struct route_node *route_node_match (const struct route_table *, const struct prefix *); extern struct route_node *route_node_match_ipv4 (const struct route_table *, const struct in_addr *); -#ifdef HAVE_IPV6 extern struct route_node *route_node_match_ipv6 (const struct route_table *, const struct in6_addr *); -#endif /* HAVE_IPV6 */ extern unsigned long route_table_count (const struct route_table *); |
