summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/vrf.c12
-rw-r--r--lib/vrf.h2
2 files changed, 8 insertions, 6 deletions
diff --git a/lib/vrf.c b/lib/vrf.c
index f730c539f5..edba3547c5 100644
--- a/lib/vrf.c
+++ b/lib/vrf.c
@@ -72,16 +72,18 @@ vrf_list_lookup_by_name (const char *name)
/* Create new vrf structure. */
struct vrf *
-vrf_create (const char *name, size_t namelen)
+vrf_create (const char *name)
{
struct vrf *vrfp;
vrfp = XCALLOC (MTYPE_VRF, sizeof (struct vrf));
assert (name);
- assert (namelen <= VRF_NAMSIZ); /* Need space for '\0' at end. */
- strncpy (vrfp->name, name, namelen);
- vrfp->name[namelen] = '\0';
+
+ 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
@@ -102,7 +104,7 @@ vrf_get_by_name (const char *name)
struct vrf *vrfp;
return ((vrfp = vrf_list_lookup_by_name (name)) != NULL) ? vrfp :
- vrf_create (name, strlen(name));
+ vrf_create (name);
}
/* Build the table key */
diff --git a/lib/vrf.h b/lib/vrf.h
index 3172b4f4c5..79741d3b0e 100644
--- a/lib/vrf.h
+++ b/lib/vrf.h
@@ -111,7 +111,7 @@ extern struct vrf *vrf_lookup_by_name (const char *);
extern struct vrf *vrf_list_lookup_by_name (const char *);
extern struct vrf *vrf_get_by_name (const char *);
extern struct vrf *vrf_get (vrf_id_t, const char *);
-extern struct vrf *vrf_create (const char *, size_t);
+extern struct vrf *vrf_create (const char *);
extern void vrf_delete (struct vrf *);
extern int vrf_enable (struct vrf *);
extern vrf_id_t vrf_name_to_id (const char *);