Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package NetworkManager for openSUSE:Factory checked in at 2024-07-30 11:53:41 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/NetworkManager (Old) and /work/SRC/openSUSE:Factory/.NetworkManager.new.1882 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "NetworkManager" Tue Jul 30 11:53:41 2024 rev:271 rq:1190184 version:1.48.4 Changes: -------- --- /work/SRC/openSUSE:Factory/NetworkManager/NetworkManager.changes 2024-07-10 16:48:14.568814167 +0200 +++ /work/SRC/openSUSE:Factory/.NetworkManager.new.1882/NetworkManager.changes 2024-07-30 11:53:56.560260195 +0200 @@ -1,0 +2,7 @@ +Mon Jul 29 06:41:28 UTC 2024 - Jonathan Kang <songchuan.kang@suse.com> + +- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch: + manager: don't renew dhcp lease when software devices' MAC is empty + (bsc#1225498, glfd#NetworkManager/NetworkManager#1587). + +------------------------------------------------------------------- New: ---- NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch BETA DEBUG BEGIN: New: - Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch: manager: don't renew dhcp lease when software devices' MAC is empty BETA DEBUG END: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ NetworkManager.spec ++++++ --- /var/tmp/diff_new_pack.9BayE2/_old 2024-07-30 11:53:57.408294410 +0200 +++ /var/tmp/diff_new_pack.9BayE2/_new 2024-07-30 11:53:57.412294571 +0200 @@ -92,6 +92,8 @@ Patch7: nm-add-CAP_SYS_ADMIN-permission.patch # PATCH-FIX-SLE python3.6-in-sle.patch yfjiang@suse.com -- SLE still takes python 3.6 as primary runtime system, the patch makes meson find python 3.6 Patch8: python3.6-in-sle.patch +# PATCH-FIX-SLE NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch bsc#1225498, glfd#NetworkManager/NetworkManager#1587 -- manager: don't renew dhcp lease when software devices' MAC is empty +Patch9: NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch BuildRequires: c++_compiler BuildRequires: dnsmasq @@ -301,6 +303,7 @@ %patch -P 7 -p1 %if 0%{?sle_version} && 0%{?sle_version} < 160000 %patch -P 8 -p1 +%patch -P 9 -p1 %endif # Fix server.conf's location, to end up in %%{_defaultdocdir}/%%{name}, ++++++ NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch ++++++ From a32094e9f8845700c6037634614863d1cee1ff55 Mon Sep 17 00:00:00 2001 From: Jonathan Kang <jonathankang@gnome.org> Date: Wed, 17 Jul 2024 21:06:45 +0800 Subject: [PATCH] manager: don't renew dhcp lease when software devices' MAC is empty If a bridge device doesn't have a permanent MAC address, its MAC address will change based on the attached ports. When suspending the system, all slaves can be released, thus MAC address of the bridge interface changes to 00:00:00:00:00:00. In such scenarios, if you resume the system, NetworkManager tries to renew dhcp lease on the bridge interface with an empty MAC address. Because its slaved ports haven't been attached yet. Fix that in this commit. https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/1587 --- src/core/nm-manager.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/core/nm-manager.c b/src/core/nm-manager.c index e949ea1189..00aa58c23a 100644 --- a/src/core/nm-manager.c +++ b/src/core/nm-manager.c @@ -10,6 +10,7 @@ #include <fcntl.h> #include <limits.h> +#include <linux/if_ether.h> #include <stdlib.h> #include <sys/sendfile.h> #include <sys/stat.h> @@ -7359,7 +7360,8 @@ do_sleep_wake(NMManager *self, gboolean sleeping_changed) guint i; if (nm_device_is_software(device) - && !nm_device_get_unmanaged_flags(device, NM_UNMANAGED_SLEEPING)) { + && !nm_device_get_unmanaged_flags(device, NM_UNMANAGED_SLEEPING) + && !nm_utils_hwaddr_matches(nm_device_get_hw_address(device), -1, &nm_ether_addr_zero, ETH_ALEN)) { /* DHCP leases of software devices could have gone stale * so we need to renew them. */ nm_device_update_dynamic_ip_setup(device, "wake up"); -- 2.45.2