summaryrefslogtreecommitdiffstats
path: root/zebra/rt_netlink.c
diff options
context:
space:
mode:
Diffstat (limited to 'zebra/rt_netlink.c')
-rw-r--r--zebra/rt_netlink.c15
1 files changed, 3 insertions, 12 deletions
diff --git a/zebra/rt_netlink.c b/zebra/rt_netlink.c
index e9ddd737..8b65845e 100644
--- a/zebra/rt_netlink.c
+++ b/zebra/rt_netlink.c
@@ -454,13 +454,8 @@ netlink_interface (struct sockaddr_nl *snl, struct nlmsghdr *h)
}
/* Add interface. */
- ifp = if_lookup_by_index(ifi->ifi_index);
- if (!ifp)
- {
- ifp = if_create(name, strlen(name));
- ifp->ifindex = ifi->ifi_index;
- }
- strncpy(ifp->name, name, INTERFACE_NAMSIZ);
+ ifp = if_get_by_name (name);
+ ifp->ifindex = ifi->ifi_index;
ifp->flags = ifi->ifi_flags & 0x0000fffff;
ifp->mtu6 = ifp->mtu = *(uint32_t *) RTA_DATA (tb[IFLA_MTU]);
ifp->metric = 1;
@@ -968,14 +963,10 @@ netlink_link_change (struct sockaddr_nl *snl, struct nlmsghdr *h)
{
if (ifp == NULL)
{
- ifp = if_create(name, strlen(name));
+ ifp = if_get_by_name (name);
ifp->ifindex = ifi->ifi_index;
ifp->metric = 1;
}
- else if (strcmp(ifp->name, name) != 0)
- {
- strncpy(ifp->name, name, INTERFACE_NAMSIZ);
- }
zlog_info ("interface %s index %d %s added.",
name, ifi->ifi_index, if_flag_dump(new_flags));