mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-02 18:52:04 +00:00
lib: Fix nexthop num
If we assign MULTIPATH_NUM to be 256, this causes issues for us since 256 is bigger than a u_char. So let's make the api's multipath_num to be a u_int16_t and pass it around as a word. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This commit is contained in:
parent
98ca91e95a
commit
b5f7965155
@ -940,7 +940,7 @@ int zapi_route_encode(u_char cmd, struct stream *s, struct zapi_route *api)
|
||||
api->nexthop_num = MULTIPATH_NUM;
|
||||
}
|
||||
|
||||
stream_putc(s, api->nexthop_num);
|
||||
stream_putw(s, api->nexthop_num);
|
||||
|
||||
for (i = 0; i < api->nexthop_num; i++) {
|
||||
api_nh = &api->nexthops[i];
|
||||
@ -1047,7 +1047,7 @@ int zapi_route_decode(struct stream *s, struct zapi_route *api)
|
||||
|
||||
/* Nexthops. */
|
||||
if (CHECK_FLAG(api->message, ZAPI_MESSAGE_NEXTHOP)) {
|
||||
api->nexthop_num = stream_getc(s);
|
||||
api->nexthop_num = stream_getw(s);
|
||||
if (api->nexthop_num > MULTIPATH_NUM) {
|
||||
zlog_warn("%s: invalid number of nexthops (%u)",
|
||||
__func__, api->nexthop_num);
|
||||
|
@ -242,7 +242,7 @@ struct zapi_route {
|
||||
struct prefix prefix;
|
||||
struct prefix_ipv6 src_prefix;
|
||||
|
||||
u_char nexthop_num;
|
||||
u_int16_t nexthop_num;
|
||||
struct zapi_nexthop nexthops[MULTIPATH_NUM];
|
||||
|
||||
u_char distance;
|
||||
|
Loading…
Reference in New Issue
Block a user