summaryrefslogtreecommitdiff
path: root/lib/vrf.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2016-04-13 10:06:36 -0400
committerDonald Sharp <sharpd@cumulusnetworks.com>2016-04-14 20:56:43 -0400
commite2b1be648db7e7906aa5e4e04b23ef88cbeff04a (patch)
tree14faf25a68b8848173c59a8b340d75a4e427537b /lib/vrf.c
parente74f14fc793475ed3dd3ad4b87f8648313b42b1b (diff)
lib, zebra: Rework vrf_add_update
The vrf_add_update function does not need to exist. Move it's constituent parts into the appropriate vrf_create/vrf_enable functionality as well as move the zebra_vrf_add_update() function call into zebra_vrf_enable() Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> Reviewed-by: Don Slice <dslice@cumulusnetworks.com> Reviewed-by: Vivek Venkatraman <vivek@cumulusnetworks.com>
Diffstat (limited to 'lib/vrf.c')
-rw-r--r--lib/vrf.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/lib/vrf.c b/lib/vrf.c
index eab720fe1d..90f8fa86ba 100644
--- a/lib/vrf.c
+++ b/lib/vrf.c
@@ -231,20 +231,16 @@ vrf_is_enabled (struct vrf *vrf)
int
vrf_enable (struct vrf *vrf)
{
-//Pending: see if VRF lib had a reason to leave it for default only
-// /* Till now, only the default VRF can be enabled. */
-// if (vrf->vrf_id == VRF_DEFAULT)
-// {
if (debug_vrf)
zlog_debug ("VRF %u is enabled.", vrf->vrf_id);
- if (vrf_master.vrf_enable_hook)
- (*vrf_master.vrf_enable_hook) (vrf->vrf_id, vrf->name, &vrf->info);
+ if (!CHECK_FLAG (vrf->status, VRF_ACTIVE))
+ SET_FLAG (vrf->status, VRF_ACTIVE);
- return 1;
-// }
+ if (vrf_master.vrf_enable_hook)
+ (*vrf_master.vrf_enable_hook) (vrf->vrf_id, vrf->name, &vrf->info);
-// return 0;
+ return 1;
}
/*