zebra: Consolidate on 32 bits as the flag size for route flags

When we get a route for installation via any method we should
consolidate on 32 bits as the flag size, since we have
actually more than 8 bits of data to bass around.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
This commit is contained in:
Donald Sharp 2020-10-15 13:41:30 -04:00
parent 502dd27af9
commit acde7f6b8e
4 changed files with 10 additions and 9 deletions

View file

@ -1001,7 +1001,7 @@ static int rtm_read_mesg(struct rt_msghdr *rtm, union sockunion *dest,
void rtm_read(struct rt_msghdr *rtm) void rtm_read(struct rt_msghdr *rtm)
{ {
int flags; int flags;
uint8_t zebra_flags; uint32_t zebra_flags;
union sockunion dest, mask, gate; union sockunion dest, mask, gate;
char ifname[INTERFACE_NAMSIZ + 1]; char ifname[INTERFACE_NAMSIZ + 1];
short ifnlen = 0; short ifnlen = 0;

View file

@ -366,7 +366,7 @@ extern void rib_uninstall_kernel(struct route_node *rn, struct route_entry *re);
* All rib_add function will not just add prefix into RIB, but * All rib_add function will not just add prefix into RIB, but
* also implicitly withdraw equal prefix of same type. */ * also implicitly withdraw equal prefix of same type. */
extern int rib_add(afi_t afi, safi_t safi, vrf_id_t vrf_id, int type, extern int rib_add(afi_t afi, safi_t safi, vrf_id_t vrf_id, int type,
unsigned short instance, int flags, struct prefix *p, unsigned short instance, uint32_t flags, struct prefix *p,
struct prefix_ipv6 *src_p, const struct nexthop *nh, struct prefix_ipv6 *src_p, const struct nexthop *nh,
uint32_t nhe_id, uint32_t table_id, uint32_t metric, uint32_t nhe_id, uint32_t table_id, uint32_t metric,
uint32_t mtu, uint8_t distance, route_tag_t tag); uint32_t mtu, uint8_t distance, route_tag_t tag);
@ -382,10 +382,11 @@ extern int rib_add_multipath_nhe(afi_t afi, safi_t safi, struct prefix *p,
struct nhg_hash_entry *nhe); struct nhg_hash_entry *nhe);
extern void rib_delete(afi_t afi, safi_t safi, vrf_id_t vrf_id, int type, extern void rib_delete(afi_t afi, safi_t safi, vrf_id_t vrf_id, int type,
unsigned short instance, int flags, struct prefix *p, unsigned short instance, uint32_t flags,
struct prefix_ipv6 *src_p, const struct nexthop *nh, struct prefix *p, struct prefix_ipv6 *src_p,
uint32_t nhe_id, uint32_t table_id, uint32_t metric, const struct nexthop *nh, uint32_t nhe_id,
uint8_t distance, bool fromkernel, bool connected_down); uint32_t table_id, uint32_t metric, uint8_t distance,
bool fromkernel, bool connected_down);
extern struct route_entry *rib_match(afi_t afi, safi_t safi, vrf_id_t vrf_id, extern struct route_entry *rib_match(afi_t afi, safi_t safi, vrf_id_t vrf_id,
union g_addr *addr, union g_addr *addr,

View file

@ -574,7 +574,7 @@ static int netlink_route_change_read_unicast(struct nlmsghdr *h, ns_id_t ns_id,
int len; int len;
struct rtmsg *rtm; struct rtmsg *rtm;
struct rtattr *tb[RTA_MAX + 1]; struct rtattr *tb[RTA_MAX + 1];
uint8_t flags = 0; uint32_t flags = 0;
struct prefix p; struct prefix p;
struct prefix_ipv6 src_p = {}; struct prefix_ipv6 src_p = {};
vrf_id_t vrf_id; vrf_id_t vrf_id;

View file

@ -3053,7 +3053,7 @@ int rib_add_multipath(afi_t afi, safi_t safi, struct prefix *p,
} }
void rib_delete(afi_t afi, safi_t safi, vrf_id_t vrf_id, int type, void rib_delete(afi_t afi, safi_t safi, vrf_id_t vrf_id, int type,
unsigned short instance, int flags, struct prefix *p, unsigned short instance, uint32_t flags, struct prefix *p,
struct prefix_ipv6 *src_p, const struct nexthop *nh, struct prefix_ipv6 *src_p, const struct nexthop *nh,
uint32_t nhe_id, uint32_t table_id, uint32_t metric, uint32_t nhe_id, uint32_t table_id, uint32_t metric,
uint8_t distance, bool fromkernel, bool connected_down) uint8_t distance, bool fromkernel, bool connected_down)
@ -3282,7 +3282,7 @@ void rib_delete(afi_t afi, safi_t safi, vrf_id_t vrf_id, int type,
int rib_add(afi_t afi, safi_t safi, vrf_id_t vrf_id, int type, int rib_add(afi_t afi, safi_t safi, vrf_id_t vrf_id, int type,
unsigned short instance, int flags, struct prefix *p, unsigned short instance, uint32_t flags, struct prefix *p,
struct prefix_ipv6 *src_p, const struct nexthop *nh, struct prefix_ipv6 *src_p, const struct nexthop *nh,
uint32_t nhe_id, uint32_t table_id, uint32_t metric, uint32_t mtu, uint32_t nhe_id, uint32_t table_id, uint32_t metric, uint32_t mtu,
uint8_t distance, route_tag_t tag) uint8_t distance, route_tag_t tag)