summaryrefslogtreecommitdiff
path: root/accel-pppd/libnetlink/iputils.h
diff options
context:
space:
mode:
authorAndrii Melnychenko <a.melnychenko@vyos.io>2026-01-07 13:14:11 +0100
committerAndrii Melnychenko <a.melnychenko@vyos.io>2026-01-30 04:25:54 +0100
commitd4f230af1cc31447289a7e30640a471a818cfd69 (patch)
treebe58051108127df6f5d700691441425cedb891c6 /accel-pppd/libnetlink/iputils.h
parent048d31cb446879e0d1a1471b4ab99135a92bf289 (diff)
downloadaccel-ppp-d4f230af1cc31447289a7e30640a471a818cfd69.tar.gz
accel-ppp-d4f230af1cc31447289a7e30640a471a818cfd69.zip
netlink: Added VRF support
Added VRF support to the iproute routines. Updated iproute* calls in the ipoe, radius, and dhcpv6 code. Signed-off-by: Andrii Melnychenko <a.melnychenko@vyos.io>
Diffstat (limited to 'accel-pppd/libnetlink/iputils.h')
-rw-r--r--accel-pppd/libnetlink/iputils.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/accel-pppd/libnetlink/iputils.h b/accel-pppd/libnetlink/iputils.h
index 9292cea2..86500882 100644
--- a/accel-pppd/libnetlink/iputils.h
+++ b/accel-pppd/libnetlink/iputils.h
@@ -4,6 +4,7 @@
#include <linux/if_link.h>
#include <netinet/in.h>
#include <stdint.h>
+#include <config.h>
typedef int (*iplink_list_func)(int index, int flags, const char *name, int iflink, int vid, void *arg);
@@ -20,12 +21,12 @@ int ipaddr_add_peer(int ifindex, in_addr_t addr, in_addr_t peer_addr);
int ipaddr_del(int ifindex, in_addr_t addr, int mask);
int ipaddr_del_peer(int ifindex, in_addr_t addr, in_addr_t peer);
-int iproute_add(int ifindex, in_addr_t src, in_addr_t dst, in_addr_t gw, int proto, int mask, uint32_t prio);
-int iproute_del(int ifindex, in_addr_t src, in_addr_t dst, in_addr_t gw, int proto, int mask, uint32_t prio);
+int iproute_add(int ifindex, in_addr_t src, in_addr_t dst, in_addr_t gw, int proto, int mask, uint32_t prio, const char *vrf_name);
+int iproute_del(int ifindex, in_addr_t src, in_addr_t dst, in_addr_t gw, int proto, int mask, uint32_t prio, const char *vrf_name);
in_addr_t iproute_get(in_addr_t dst, in_addr_t *gw);
-int ip6route_add(int ifindex, const struct in6_addr *dst, int pref_len, const struct in6_addr *gw, int proto, uint32_t prio);
-int ip6route_del(int ifindex, const struct in6_addr *dst, int pref_len, const struct in6_addr *gw, int proto, uint32_t prio);
+int ip6route_add(int ifindex, const struct in6_addr *dst, int pref_len, const struct in6_addr *gw, int proto, uint32_t prio, const char *vrf_name);
+int ip6route_del(int ifindex, const struct in6_addr *dst, int pref_len, const struct in6_addr *gw, int proto, uint32_t prio, const char *vrf_name);
int ip6addr_add(int ifindex, struct in6_addr *addr, int prefix_len);
int ip6addr_add_peer(int ifindex, struct in6_addr *addr, struct in6_addr *peer_addr);
int ip6addr_del(int ifindex, struct in6_addr *addr, int prefix_len);