iproute2/ip
Maxim Petrov 5f8bb902e1 ip/ipnexthop: fix unsigned overflow in parse_nh_group_type_res()
0UL has type 'unsigned long' which is likely to be 64bit on modern machines. At
the same time, the '{idle,unbalanced}_timer' variables are declared as u32, so
these variables cannot be greater than '~0UL / 100' when 'unsigned long' is 64
bits. In such condition it is still possible to pass the check but get the
overflow later when the timers are multiplied by 100 in 'addattr32'.

Fix the possible overflow by changing '~0UL' to 'UINT32_MAX'.

Fixes: 9167671822 ("nexthop: Add support for resilient nexthop groups")
Signed-off-by: Maxim Petrov <mmrmaximuzz@gmail.com>
Reviewed-by: Ido Schimmel <idosch@nvidia.com>
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
2021-11-18 15:01:48 -08:00
..
.gitignore Another .gitignore file. 2006-08-08 12:11:23 -07:00
Makefile ip: add AMT support 2021-11-03 13:24:13 -06:00
ila_common.h SPDX license identifiers 2017-11-24 12:21:35 -08:00
ip.c ip: add AMT support 2021-11-03 13:24:13 -06:00
ip6tunnel.c ip tunnel: add json output 2019-08-07 12:00:58 -07:00
ip_common.h ip: nexthop: add print_cache_nexthop which prints and manages the nh cache 2021-10-03 18:24:59 -06:00
ipaddress.c ip: Support filter links/neighs with no master 2021-09-12 11:17:18 -06:00
ipaddrlabel.c treewide: refactor help messages 2019-05-20 14:35:07 -07:00
ipfou.c ip fou: respect preferred_family for IPv6 2020-07-06 11:03:09 -07:00
ipila.c ip: cleanup help message text 2021-03-18 11:24:06 -07:00
ipioam6.c ipioam6: use print_nl instead of print_null 2021-09-01 12:51:44 -07:00
ipl2tp.c use print_{,h}hu instead of print_uint when format specifier is %{,h}hu 2019-02-10 19:00:59 -08:00
iplink.c ip: add AMT support 2021-11-03 13:24:13 -06:00
iplink_amt.c ip: add AMT support 2021-11-03 13:24:13 -06:00
iplink_bareudp.c iplink_bareudp: cleanup help message and man page 2021-02-02 14:11:32 -08:00
iplink_bond.c ip/bond: add lacp active support 2021-09-01 12:51:44 -07:00
iplink_bond_slave.c iplink: bond: print lacp actor/partner oper states as strings 2020-01-02 17:45:32 +00:00
iplink_bridge.c ip: bridge: add support for mcast_vlan_snooping 2021-08-31 21:20:03 -06:00
iplink_bridge_slave.c ip: iplink_bridge_slave: Convert to use print_on_off() 2020-11-24 21:43:30 -07:00
iplink_can.c iplink_can: add new CAN FD bittiming parameters: Transmitter Delay Compensation (TDC) 2021-11-04 09:43:10 -06:00
iplink_dummy.c SPDX license identifiers 2017-11-24 12:21:35 -08:00
iplink_geneve.c ip/tunnel: always print all known attributes 2021-09-01 12:51:44 -07:00
iplink_hsr.c iplink: hsr: add support for creating PRP device similar to HSR 2020-08-22 21:14:12 -07:00
iplink_ifb.c SPDX license identifiers 2017-11-24 12:21:35 -08:00
iplink_ipoib.c ip: iplink_ipoib.c: Remove extra spaces 2020-09-30 22:29:05 -07:00
iplink_ipvlan.c iplink: add ipvtap support 2018-09-20 17:53:56 -07:00
iplink_macvlan.c Merge branch 'main' into next 2021-04-28 15:48:28 +00:00
iplink_netdevsim.c ip: link: add support for netdevsim device type 2018-01-02 20:46:19 -08:00
iplink_nlmon.c SPDX license identifiers 2017-11-24 12:21:35 -08:00
iplink_rmnet.c ip: add rmnet initial support 2018-06-15 11:15:14 -07:00
iplink_team.c SPDX license identifiers 2017-11-24 12:21:35 -08:00
iplink_vcan.c SPDX license identifiers 2017-11-24 12:21:35 -08:00
iplink_vlan.c lib: parse_mapping: Recognize a keyword "all" 2020-11-13 19:43:15 -07:00
iplink_vrf.c iplink_vrf: Save device index from response for return code 2018-06-01 15:45:09 -04:00
iplink_vxcan.c iplink: Perform most of request buffer setups and checks in iplink_parse() 2018-03-11 17:59:03 -07:00
iplink_vxlan.c ip/tunnel: always print all known attributes 2021-09-01 12:51:44 -07:00
iplink_wwan.c iplink: support for WWAN devices 2021-06-26 04:40:57 +00:00
iplink_xdp.c iplink: add support for reporting multiple XDP programs 2018-07-15 13:10:03 -07:00
iplink_xstats.c ip: xstats: add json output support 2019-03-15 13:55:57 -07:00
ipmacsec.c lib: Add parse_one_of(), parse_on_off() 2020-11-13 19:43:15 -07:00
ipmaddr.c iproute2: ip maddress: Check multiaddr length 2020-08-22 21:12:30 -07:00
ipmonitor.c ip: nexthop: add print_cache_nexthop which prints and manages the nh cache 2021-10-03 18:24:59 -06:00
ipmptcp.c mptcp: fix JSON output when dumping endpoints by id 2021-11-11 10:07:26 -08:00
ipmroute.c cmd: use spaces instead of tabs for usage indentation 2021-10-06 10:00:49 -07:00
ipneigh.c ip, neigh: Add NTF_EXT_MANAGED support 2021-10-28 08:59:03 -06:00
ipnetconf.c ip: ipnetconf: Convert to use print_on_off() 2020-11-24 21:43:34 -07:00
ipnetns.c ip: netns: fix missing netns close on some error paths 2021-04-26 21:04:02 -07:00
ipnexthop.c ip/ipnexthop: fix unsigned overflow in parse_nh_group_type_res() 2021-11-18 15:01:48 -08:00
ipntable.c cmd: use spaces instead of tabs for usage indentation 2021-10-06 10:00:49 -07:00
ipprefix.c Tree wide: Drop sockaddr_nl arg 2018-10-22 09:43:48 -07:00
iproute.c Merge branch 'main' into next 2021-10-09 17:47:47 -06:00
iproute_lwtunnel.c Add support for IOAM encap modes 2021-10-09 17:35:29 -06:00
iprule.c ip: cleanup help message text 2021-03-18 11:24:06 -07:00
ipseg6.c cmd: use spaces instead of tabs for usage indentation 2021-10-06 10:00:49 -07:00
iptoken.c ip/iptoken: fix dump error when ipv6 disabled 2019-06-26 14:23:12 -07:00
iptunnel.c cmd: use spaces instead of tabs for usage indentation 2021-10-06 10:00:49 -07:00
iptuntap.c cmd: use spaces instead of tabs for usage indentation 2021-10-06 10:00:49 -07:00
ipvrf.c vrf: print BPF log buffer if bpf_program_load fails 2021-01-18 12:32:11 -08:00
ipxfrm.c Merge branch 'main' into next 2021-03-21 17:16:01 +00:00
link_gre.c ip/tunnel: always print all known attributes 2021-09-01 12:51:44 -07:00
link_gre6.c ip/tunnel: always print all known attributes 2021-09-01 12:51:44 -07:00
link_ip6tnl.c ip/tunnel: always print all known attributes 2021-09-01 12:51:44 -07:00
link_iptnl.c ip/tunnel: always print all known attributes 2021-09-01 12:51:44 -07:00
link_veth.c iplink: Perform most of request buffer setups and checks in iplink_parse() 2018-03-11 17:59:03 -07:00
link_vti.c treewide: refactor help messages 2019-05-20 14:35:07 -07:00
link_vti6.c treewide: refactor help messages 2019-05-20 14:35:07 -07:00
link_xfrm.c ip: xfrm if_id -ve value is error 2019-12-25 12:38:13 -08:00
nh_common.h ip: nexthop: add print_cache_nexthop which prints and manages the nh cache 2021-10-03 18:24:59 -06:00
routel ip: rewrite routel in python 2021-09-06 16:31:24 -06:00
rtm_map.c ip: add a new parameter -Numeric 2019-06-18 08:37:47 -07:00
rtmon.c cmd: use spaces instead of tabs for usage indentation 2021-10-06 10:00:49 -07:00
static-syms.c SPDX license identifiers 2017-11-24 12:21:35 -08:00
tcp_metrics.c treewide: refactor help messages 2019-05-20 14:35:07 -07:00
tunnel.c ip tunnel: add json output 2019-08-07 12:00:58 -07:00
tunnel.h tunnel: factorize printout of GRE key and flags 2019-07-18 10:19:47 -07:00
xfrm.h xfrm: enable to manage default policies 2021-10-28 08:58:28 -06:00
xfrm_monitor.c xfrm: enable to manage default policies 2021-10-28 08:58:28 -06:00
xfrm_policy.c xfrm: enable to manage default policies 2021-10-28 08:58:28 -06:00
xfrm_state.c ip: xfrm: add support for tfcpad 2021-03-21 17:15:07 +00:00