summaryrefslogtreecommitdiff
path: root/zebra/if_netlink.c
diff options
context:
space:
mode:
authorPhilippe Guibert <philippe.guibert@6wind.com>2017-12-11 15:21:04 +0100
committerPhilippe Guibert <philippe.guibert@6wind.com>2017-12-13 16:54:10 +0100
commite86b71f142b66ca0b74b5d392ea537fd3a30f33c (patch)
tree11c35cdb12fdb7c6d8c1be379d0785cfae2df001 /zebra/if_netlink.c
parentdb33b83b1d90458503987fd9f5f21c09c045e9a7 (diff)
zebra: ipv6 addressing uses netlink socket instead of standard ioctl
It is possible to configure IPv6 addresses from interfaces by using netlink socket, intead of using standard sockets. Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
Diffstat (limited to 'zebra/if_netlink.c')
-rw-r--r--zebra/if_netlink.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/zebra/if_netlink.c b/zebra/if_netlink.c
index af17e49231..f73506bf91 100644
--- a/zebra/if_netlink.c
+++ b/zebra/if_netlink.c
@@ -838,6 +838,16 @@ int kernel_address_delete_ipv4(struct interface *ifp, struct connected *ifc)
return netlink_address(RTM_DELADDR, AF_INET, ifp, ifc);
}
+int kernel_address_add_ipv6 (struct interface *ifp, struct connected *ifc)
+{
+ return netlink_address (RTM_NEWADDR, AF_INET6, ifp, ifc);
+}
+
+int kernel_address_delete_ipv6 (struct interface *ifp, struct connected *ifc)
+{
+ return netlink_address (RTM_DELADDR, AF_INET6, ifp, ifc);
+}
+
int netlink_interface_addr(struct sockaddr_nl *snl, struct nlmsghdr *h,
ns_id_t ns_id, int startup)
{