diff --git a/NetworkManager.spec b/NetworkManager.spec index a2e6923b5be1f141160609d5523b05c1c565d7db..f989f3b094cb47233c7ef8a99890258329b2e066 100644 --- a/NetworkManager.spec +++ b/NetworkManager.spec @@ -51,7 +51,7 @@ Name: NetworkManager Version: 1.44.2 Epoch: 1 -Release: 3 +Release: 4 Summary: 4 License: GPLv2+ URL: https://networkmanager.dev/ @@ -67,6 +67,7 @@ Patch6: 0001-add-NM-to-support-wifi6.patch Patch6000: backport-lldp-fix-crash-dereferencing-NULL-pointer-during-deb.patch Patch6001: backport-lldp-fix-multiple-access-to-argument-in-logging-macr.patch +Patch6002: backport-mptcp-fix-error-handling-rp_filter-when-kernel-dont-support-mptcp.patch BuildRequires: gcc libtool pkgconfig automake autoconf intltool gettext-devel ppp-devel gnutls-devel BuildRequires: dbus-devel glib2-devel gobject-introspection-devel jansson-devel @@ -551,6 +552,12 @@ fi %{_datadir}/gtk-doc/html/NetworkManager/* %changelog +* Mon Sep 15 2025 qinxue - 1:1.44.2-4 +- Type:bugfix +- CVE:NA +- SUG:NA +- DESC:mptcp fix error handling rp_filter when kernel don't support mptcp + * Wed Oct 16 2024 zhongxuan - 1:1.44.2-3 - Type:CVE - CVE:CVE-2024-6501 diff --git a/backport-mptcp-fix-error-handling-rp_filter-when-kernel-dont-support-mptcp.patch b/backport-mptcp-fix-error-handling-rp_filter-when-kernel-dont-support-mptcp.patch new file mode 100644 index 0000000000000000000000000000000000000000..0da97eac189eade66f223ec99fd52c21faaa79c2 --- /dev/null +++ b/backport-mptcp-fix-error-handling-rp_filter-when-kernel-dont-support-mptcp.patch @@ -0,0 +1,40 @@ +From 9c42177d0936f9cbfc0dcbfb994821dad8322ed7 Mon Sep 17 00:00:00 2001 +From: eaglegai +Date: Tue, 24 Dec 2024 23:03:06 +0800 +Subject: [PATCH] mptcp: fix error handling rp_filter when kernel don't support + mptcp + +When the kernel don't support mptcp, NetworkManager should disable mptcp +and shouldn't change rp_filter from 1 to 2. However, when checking file +/proc/sys/net/mptcp/enabled, val v's type is defined to guint32, and +nm_platform_sysctl_get_int32 return -1, v becomes a very large number +and can't set mptcp_flags to NM_MPTCP_FLAGS_DISABLED. + +https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/1686 +https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2093 + +Fixes: c00873e08f ('mptcp: rework "connection.mptcp-flags" for enabling MPTCP') + +Conflict:no +Reference:https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/9c42177d0936f9cbfc0dcbfb994821dad8322ed7 + +--- + src/core/devices/nm-device.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/core/devices/nm-device.c b/src/core/devices/nm-device.c +index ba3e07c9a39..8bd73ea1bb8 100644 +--- a/src/core/devices/nm-device.c ++++ b/src/core/devices/nm-device.c +@@ -1489,7 +1489,7 @@ _prop_get_connection_mptcp_flags(NMDevice *self) + + if (!NM_FLAGS_HAS(mptcp_flags, NM_MPTCP_FLAGS_DISABLED)) { + if (!NM_FLAGS_HAS(mptcp_flags, NM_MPTCP_FLAGS_ALSO_WITHOUT_SYSCTL)) { +- guint32 v; ++ gint32 v; + + /* If enabled, but without "also-without-sysctl", then MPTCP is still + * disabled, if the sysctl says so... +-- +GitLab +