From: Ondrej Zajicek (work) Date: Mon, 20 Dec 2021 19:44:36 +0000 (+0100) Subject: Nest: Add convenience functions to check rtable net type X-Git-Tag: v2.0.9~7^2~7 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=fde1cff0122ee9d68f141976395e7f89ba28c311;p=thirdparty%2Fbird.git Nest: Add convenience functions to check rtable net type --- diff --git a/nest/route.h b/nest/route.h index 5f0c35783..a1732bc70 100644 --- a/nest/route.h +++ b/nest/route.h @@ -362,6 +362,18 @@ void rt_prune_sync(rtable *t, int all); int rte_update_out(struct channel *c, const net_addr *n, rte *new, rte *old0, int refeed); struct rtable_config *rt_new_table(struct symbol *s, uint addr_type); +static inline int rt_is_ip(rtable *tab) +{ return (tab->addr_type == NET_IP4) || (tab->addr_type == NET_IP6); } + +static inline int rt_is_vpn(rtable *tab) +{ return (tab->addr_type == NET_VPN4) || (tab->addr_type == NET_VPN6); } + +static inline int rt_is_roa(rtable *tab) +{ return (tab->addr_type == NET_ROA4) || (tab->addr_type == NET_ROA6); } + +static inline int rt_is_flow(rtable *tab) +{ return (tab->addr_type == NET_FLOW4) || (tab->addr_type == NET_FLOW6); } + /* Default limit for ECMP next hops, defined in sysdep code */ extern const int rt_default_ecmp;