diff options
author | Ondrej Zajicek (work) <santiago@crfreenet.org> | 2019-07-18 02:04:42 +0200 |
---|---|---|
committer | Ondrej Zajicek (work) <santiago@crfreenet.org> | 2019-07-18 02:04:42 +0200 |
commit | f9deedf1f045d1b64edaf2f27209e5227cce155a (patch) | |
tree | cd092a8b499d79be68ee22cb5981154811ed8021 /nest/bfd.h | |
parent | 9ff6c8d83c7fee5f354d4d6ed4efc15bfc6bc7e1 (diff) |
BFD: Support for VRFs
Allow multiple BFD instances in separate VRFs, dispatch BFD requests
according to VRFs.
Thanks to Alexander Zubkov for notice and patches.
Diffstat (limited to 'nest/bfd.h')
-rw-r--r-- | nest/bfd.h | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -19,6 +19,7 @@ struct bfd_request { ip_addr addr; ip_addr local; struct iface *iface; + struct iface *vrf; void (*hook)(struct bfd_request *); void *data; @@ -40,13 +41,13 @@ struct bfd_request { #ifdef CONFIG_BFD -struct bfd_request * bfd_request_session(pool *p, ip_addr addr, ip_addr local, struct iface *iface, void (*hook)(struct bfd_request *), void *data); +struct bfd_request * bfd_request_session(pool *p, ip_addr addr, ip_addr local, struct iface *iface, struct iface *vrf, void (*hook)(struct bfd_request *), void *data); static inline void cf_check_bfd(int use UNUSED) { } #else -static inline struct bfd_request * bfd_request_session(pool *p, ip_addr addr, ip_addr local, struct iface *iface, void (*hook)(struct bfd_request *), void *data) { return NULL; } +static inline struct bfd_request * bfd_request_session(pool *p, ip_addr addr, ip_addr local, struct iface *iface, struct iface *vrf, void (*hook)(struct bfd_request *), void *data) { return NULL; } static inline void cf_check_bfd(int use) { if (use) cf_error("BFD not available"); } |