diff options
| author | Donald Sharp <sharpd@cumulusnetworks.com> | 2016-04-08 19:32:53 +0000 |
|---|---|---|
| committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2016-04-12 20:19:28 -0400 |
| commit | 58255d344034a360de07b4998ff2936a8d2c604d (patch) | |
| tree | 15a70889ce025b9217b845732eaf6d1f2fe9e772 /lib/vrf.c | |
| parent | 88227bbe362c827208541f8bd145bd2cccfb1f59 (diff) | |
lib, zebra: Refactor vrf creation a bit more
Create the idea of a VRF_UNKNOWN, this is for a vrf where we don't
yet have the vrf_id for it yet.
Refactor the vrf_create code out of existence. We had two code
paths vrf_create and vrf_get. We should use vrf_get to create
the new vrf since XXX_get() creates the data structures now.
Signed-off-by: Donald Sharp
Reviewed-by: Vivek Venkatraman <vivek@cumulusnetworks.com>
Diffstat (limited to 'lib/vrf.c')
| -rw-r--r-- | lib/vrf.c | 37 |
1 files changed, 0 insertions, 37 deletions
@@ -70,43 +70,6 @@ vrf_list_lookup_by_name (const char *name) return NULL; } -/* Create new vrf structure. */ -struct vrf * -vrf_create (const char *name) -{ - struct vrf *vrfp; - - vrfp = XCALLOC (MTYPE_VRF, sizeof (struct vrf)); - - assert (name); - - zlog_debug ("Vrf_create: %s", name); - strncpy (vrfp->name, name, VRF_NAMSIZ); - vrfp->name[VRF_NAMSIZ] = '\0'; - - if (vrf_list_lookup_by_name (vrfp->name) == NULL) - listnode_add_sort (vrf_list, vrfp); - else - zlog_err("vrf_create(%s): corruption detected -- vrf with this " - "name exists already with vrf-id %u!", vrfp->name, vrfp->vrf_id); - - UNSET_FLAG(vrfp->status, VRF_ACTIVE); - - if (vrf_master.vrf_new_hook) - (*vrf_master.vrf_new_hook) (0, name, &vrfp->info); - - return vrfp; -} - -struct vrf * -vrf_get_by_name (const char *name) -{ - struct vrf *vrfp; - - return ((vrfp = vrf_list_lookup_by_name (name)) != NULL) ? vrfp : - vrf_create (name); -} - /* Build the table key */ static void vrf_build_key (vrf_id_t vrf_id, struct prefix *p) |
