summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--zebra/zebra_router.c2
-rw-r--r--zebra/zebra_vrf.c16
2 files changed, 3 insertions, 15 deletions
diff --git a/zebra/zebra_router.c b/zebra/zebra_router.c
index 2e1c69fb92..7f911164cd 100644
--- a/zebra/zebra_router.c
+++ b/zebra/zebra_router.c
@@ -105,7 +105,7 @@ struct route_table *zebra_router_get_table(struct zebra_vrf *zvrf,
info = XCALLOC(MTYPE_RIB_TABLE_INFO, sizeof(*info));
info->zvrf = zvrf;
info->afi = afi;
- info->safi = SAFI_UNICAST;
+ info->safi = safi;
route_table_set_info(zrt->table, info);
zrt->table->cleanup = zebra_rtable_node_cleanup;
diff --git a/zebra/zebra_vrf.c b/zebra/zebra_vrf.c
index 38b8b43d73..f1458cb138 100644
--- a/zebra/zebra_vrf.c
+++ b/zebra/zebra_vrf.c
@@ -370,22 +370,10 @@ static void zebra_rnhtable_node_cleanup(struct route_table *table,
static void zebra_vrf_table_create(struct zebra_vrf *zvrf, afi_t afi,
safi_t safi)
{
- rib_table_info_t *info;
- struct route_table *table;
-
assert(!zvrf->table[afi][safi]);
- table = zebra_router_get_table(zvrf, zvrf->table_id, afi, safi);
-
- table->cleanup = zebra_rtable_node_cleanup;
- zvrf->table[afi][safi] = table;
-
- XFREE(MTYPE_RIB_TABLE_INFO, table->info);
- info = XCALLOC(MTYPE_RIB_TABLE_INFO, sizeof(*info));
- info->zvrf = zvrf;
- info->afi = afi;
- info->safi = safi;
- route_table_set_info(table, info);
+ zvrf->table[afi][safi] =
+ zebra_router_get_table(zvrf, zvrf->table_id, afi, safi);
}
/* Allocate new zebra VRF. */