From 7bd8690173d8c45d17598ebccc8472322b1451c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Wennmann?= <118190520+wennmbj@users.noreply.github.com> Date: Wed, 15 May 2024 18:18:47 +0200 Subject: Fix netlink_connector bit shift in netmask ipv6 (#696) Shifting more than 31 bit was possible which may lead to undefined behaviour --- implementation/endpoints/src/netlink_connector.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/implementation/endpoints/src/netlink_connector.cpp b/implementation/endpoints/src/netlink_connector.cpp index 0d99ec7f..f81e0aba 100644 --- a/implementation/endpoints/src/netlink_connector.cpp +++ b/implementation/endpoints/src/netlink_connector.cpp @@ -425,7 +425,7 @@ bool netlink_connector::check_sd_multicast_route_match(struct rtmsg* _routemsg, if (i > 95) { netmask2[0] |= static_cast(1 << (i-96)); } else if (i > 63) { - netmask2[1] |= static_cast(1 << (i-63)); + netmask2[1] |= static_cast(1 << (i-64)); } else if (i > 31) { netmask2[2] |= static_cast(1 << (i-32)); } else { -- cgit v1.2.3