Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package NetworkManager.16141 for openSUSE:Leap:15.2:Update checked in at 2021-04-26 16:17:07 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Leap:15.2:Update/NetworkManager.16141 (Old) and /work/SRC/openSUSE:Leap:15.2:Update/.NetworkManager.16141.new.12324 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "NetworkManager.16141" Mon Apr 26 16:17:07 2021 rev:1 rq:888051 version:1.22.10 Changes: -------- New Changes file: --- /dev/null 2021-04-15 00:52:17.177990775 +0200 +++ /work/SRC/openSUSE:Leap:15.2:Update/.NetworkManager.16141.new.12324/NetworkManager.changes 2021-04-26 16:17:08.312078052 +0200 @@ -0,0 +1,4522 @@ +------------------------------------------------------------------- +Fri Apr 9 06:11:21 UTC 2021 - Jonathan Kang <songchuan.k...@suse.com> + +- Add nm-fix-dhcp-client-timeout.patch: Better handle dhclient's + timeout so that a recorded lease can be used when dhcp server + is down(glfo#NetworkManager/NetworkManager!811, bsc#1183202). +- Modified NetworkManager.conf: Use dhclient as the default dhcp + client(glfo#NetworkManager/NetworkManager!811, bsc#1183202). + +------------------------------------------------------------------- +Thu Mar 25 07:54:02 UTC 2021 - Jonathan Kang <songchuan.k...@suse.com> + +- Add NM-restore-MAC-on-release-only-when-cloned.patch: bond: + restore MAC on release only when there is a cloned MAC address + (glfo#NetworkManager/NetworkManager!775, bsc#1183967). + +------------------------------------------------------------------- +Thu Jul 2 02:54:36 UTC 2020 - Jonathan Kang <songchuan.k...@suse.com> + +- Rebase nm-add-CAP_SYS_ADMIN-permission.patch. + +------------------------------------------------------------------- +Thu Mar 12 15:48:22 UTC 2020 - Bj??rn Lie <bjorn....@gmail.com> + +- Update to version 1.22.10: + + core: periodically cleanup stale device state files from /run. + + dhcp: fix crash in nettools client. + + bond: fixed the validation of the miimon option. + + Various minor bug fixes and improvements. + +------------------------------------------------------------------- +Wed Mar 11 08:24:26 UTC 2020 - Dr. Werner Fink <wer...@suse.de> + +- Modify nfs script (boo#1164642) + * Also mount nfs4 shares + * Ignore nfs or nfs4 shares in case if the noauto option is set + +------------------------------------------------------------------- +Tue Feb 18 18:21:13 UTC 2020 - Bj??rn Lie <bjorn....@gmail.com> + +- Update to version 1.22.8: + + Added configuration option to customize IPv6 RA timeout. + + Internal DHCP client will now request a lease renewal using the + previously obtained IP address when expired. + + Removed length limitation for OVS Bridge, Patches and + Interfaces (only Patch types) names. + + Fixed initialization of 'secs' DHCP header field, this caused + some DHCP relays to drop packets. + + Fixed failure when creating team interfaces using 'nmstate'. + + Various bug fixes and improvements. + +------------------------------------------------------------------- +Wed Feb 5 15:11:19 UTC 2020 - Michael Gorse <mgo...@suse.com> + +- Add -fcommon to CFLAGS. This is currently being done upstream + (boo#1160381). + +------------------------------------------------------------------- +Fri Jan 31 10:36:29 UTC 2020 - Bj??rn Lie <bjorn....@gmail.com> + +- Update to version 1.22.6: + + Various fixes for the internal DHCP client. + + Slave devices now do not get created/activated if master is + missing. + + Fixed 'startup-complete' bug where NetworkManager would reach + the network-online.target even when not all the connections had + been tried. + + Updated translations. + +------------------------------------------------------------------- +Sat Jan 25 14:04:08 UTC 2020 - Dominique Leuenberger <dims...@opensuse.org> + +- No longer recommend -lang: supplements are in use + +------------------------------------------------------------------- +Fri Jan 10 11:09:18 UTC 2020 - Bj??rn Lie <bjorn....@gmail.com> + +- Update to version 1.22.4: + + Fix behavior of internal DHCP client when the server sends a + NAK. + + Support 31-bit prefixes on IPv4 point-to-point links according + to RFC 3021. + + Fix memory leak parsing RequestScan D-Bus method arguments. + +------------------------------------------------------------------- +Wed Jan 8 20:54:45 UTC 2020 - Lorenz H??depohl <d...@stellardeath.org> + +- Fix 'nfs' dispatcher script + It was checking for an enabled unit 'nfs.service' - which does not + exist (anymore?). Switched to a check for an enabled unit + 'nfs-client.target' + +------------------------------------------------------------------- +Tue Dec 24 16:11:15 UTC 2019 - Bj??rn Lie <bjorn....@gmail.com> + +- Update to version 1.22.2: + + Fix multiple issues in the internal DHCP client, including + wrong parsing of search domains and classless routes options, + and failures in obtaining and renewing the lease with certain + server configurations. + + Export NM_CAPABILITY_OVS capability on D-Bus and in libnm to + indicate that the OVS plugin is loaded. + + Fix libnm annotations for nm_sriov_vf_get_vlan_ids() to allow + the usage of the function through GObject introspection. + +------------------------------------------------------------------- +Tue Dec 17 12:33:25 UTC 2019 - Bj??rn Lie <bjorn....@gmail.com> + +- Update to version 1.22.0: + + Drop support for BlueZ 4. BlueZ 5 was released in 2012 and + should nowadays be available everywhere. + + DHCP: switch "internal" DHCPv4 plugin from code based on + systemd to use nettools' n-dhcp4 library. + + Add support for "scope" attribute for IPv4 routes. + + Add support for specifying IAID and FQDN flags for DHCP + request. + + Add a '802-1x.optional' property to consider the wired 802.1X + authentication as optional. + + Use the Network Cost Wi-Fi information element to determine + metered device state. + + Support main.auth-polkit=root-only setting to disable PolicyKit + use and restrict authorization to root user. + + core: declare "startup complete" when device reaches + "connected" state, even if IP addressing methods did not yet + fully complete. This changes behavior for unblocking + "NetworkManager-wait-online.service", and + "network-online.target" earlier. If this causes issues in your + setup, you may need to configure "ipv4.may-fail=no" or + "ipv6.may-fail=no", which delays reaching "connected" state for + the address family accordingly. + + libnm: hide NMObject and NMClient typedefs from header files. + This prevents the user from subclassing these types and is an + ABI change (in the unlikely case that a user was subclassing + the types, which is no longer supported). + + libnm: retire deprecated WiMAX API NMDeviceWimax and + NMWimaxNsp. WiMAX support was removed from NetworkManager in + version 1.2 (2016) and no such type instances would have been + created by NMClient for a while now. + + Deprecate synchronous API for D-Bus calls in libnm. We don't + remove libnm API so you are free to continue using it. But + tells you that using it might be a bad idea. + + libnm: heavily internal rework NMClient. This slims down libnm + and makes the implementation more efficient. NMClient should + work now well with a separate GMainContext. + + Add `nmcli general reload` subcommand to reload NetworkManager + configuration and DNS settings. + + nm-cloud-setup: add new tool for automatically configuring + NetworkManager in cloud. This is still experimental and + currently only EC2 and IPv4 is supported. + + Add new NetworkManager logo to "contrib/art/logo". + + Various bug fixes and improvements. +- Disable networkmanager-checks-po.patch: Needs rebase. +- Add new nm-cloud-setup.service to pre/post/preun/postun calls. + +------------------------------------------------------------------- +Mon Nov 25 15:24:42 UTC 2019 - Bj??rn Lie <bjorn....@gmail.com> + +- Update to version 1.20.8: + + Fix handling of system CA certificates in the ifcfg parser. + + Handle ReachableTime and RetransTimer from IPv6 Router + Advertisements. + + Fixed setting of MTU according to its parent device for some + device types. + + Various fixes for the initramfs configuration genertor. + +------------------------------------------------------------------- +Wed Nov 6 17:36:13 UTC 2019 - Bj??rn Lie <bjorn....@gmail.com> + +- Update to version 1.20.6: + + Fix updating agent-owned VPN secrets. + + Adjust IWD support to new D-Bus path of IWD 1.0. + + Introduce an 'optional' property in the 802-1x setting to + allow the activation to proceed in case of missing + authenticator. + + Fix ARP announcements for IP addresses configured on + interfaces. + + Use proper interface when adding s390 specific details in + initrd generator. + + Don't disable PMF on Wi-Fi connections using SAE. + + Properly handle uint16 property types in libnm. + +------------------------------------------------------------------- +Thu Oct 31 08:31:22 UTC 2019 - Dominique Leuenberger <dims...@opensuse.org> + +- Drop NetworkNanager-client recommends: this is no longer needed, + as NM itself ships a frontend by now (nmtui). If a DE has a + better way to manage NM (by means of applets or other way of + integration) it is up to the DE to depend on the applets. + +------------------------------------------------------------------- +Wed Oct 9 19:26:34 UTC 2019 - Bj??rn Lie <bjorn....@gmail.com> + +- Update to version 1.20.4: + + Fix crash related to Wi-Fi-P2P. + + Support rd.znet option in initrd generator to support s390. + + Fix not creating default-wired-connection when a suitable + profile exists which is not tied to the device by ++++ 4325 more lines (skipped) ++++ between /dev/null ++++ and /work/SRC/openSUSE:Leap:15.2:Update/.NetworkManager.16141.new.12324/NetworkManager.changes New: ---- 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch NM-restore-MAC-on-release-only-when-cloned.patch NetworkManager-1.10.6-netconfig.patch NetworkManager-1.22.10.tar.xz NetworkManager-rpmlintrc NetworkManager.changes NetworkManager.conf NetworkManager.spec baselibs.conf networkmanager-checks-po.patch networkmanager-obs-net.patch nfs nm-add-CAP_SYS_ADMIN-permission.patch nm-dont-overwrite-resolv-conf.patch nm-fix-dhcp-client-timeout.patch nm-probe-radius-server-cert.patch systemd-network-config.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ NetworkManager.spec ++++++ # # spec file for package NetworkManager # # Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # # Toggle this whenever enabling/disabling the nm-probe-radius-server-cert.patch patch (as we export additional symbols) # Like this, g-c-c and NM-applet, which consume this symbol, will block updating NM if we have to disable the patch until # they are touched too %define with_cacert_patch 0 %define _udevdir %(pkg-config --variable udevdir udev) Name: NetworkManager Version: 1.22.10 Release: 0 Summary: Network Link Manager and user applications for it License: GPL-2.0-or-later Group: Productivity/Networking/System URL: http://www.gnome.org/projects/NetworkManager/ Source0: https://download.gnome.org/sources/%{name}/1.22/%{name}-%{version}.tar.xz Source1: nfs Source2: NetworkManager.conf Source3: baselibs.conf Source99: NetworkManager-rpmlintrc # PATCH-FEATURE-OPENSUSE systemd-network-config.patch -- don't try to start NM under systemd if it is disabled in system configuration Patch0: systemd-network-config.patch # PATCH-FIX-UPSTREAM nm-probe-radius-server-cert.patch bnc#574266 g...@suse.com -- Probe the RADIUS server certificate Patch1: nm-probe-radius-server-cert.patch # PATCH-NEEDS-REBASE networkmanager-checks-po.patch tchva...@suse.com -- fix translation validation error caused by our patch systemd-network-config.patch was: PATCH-FIX-OPENSUSE Patch2: networkmanager-checks-po.patch # PATCH-NEEDS-REBASE networkmanager-obs-net.patch tchva...@suse.com -- disable tests that are by design broken on OBS workers # WAS PATCH-FIX-OPENSUSE Patch3: networkmanager-obs-net.patch # PATCH-FIX-OPENSUSE nm-dont-overwrite-resolv-conf.patch bsc#1021665, bsc#960153 sck...@suse.com -- NetworkManager spawns netconfig to update DNS settings, and terminates netconfig after 1s. But 1s isn't quite long enough for netconfig to complete the task. Adjust it to 0 seconds(don't send SIGKILL) to avoid NM overwriting /etc/resolv.conf. Patch4: nm-dont-overwrite-resolv-conf.patch # PATCH-FIX-OPENSUSE NetworkManager-1.10.6-netconfig.patch boo#1092352 -- Don't return SR_NOTFOUND if netconfig fails to launch Patch5: NetworkManager-1.10.6-netconfig.patch # PATCH-FIX-UPSTREAM 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch boo#1103678 Patch6: 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch # PATCH-FIX-OPENSUSE nm-add-CAP_SYS_ADMIN-permission.patch bsc#1129587 sck...@suse.com -- Add CAP_SYS_ADMIN which netconfig needs to call setdomainname Patch7: nm-add-CAP_SYS_ADMIN-permission.patch # PATCH-FIX-UPSTREAM NM-restore-MAC-on-release-only-when-cloned.patch glfo#NetworkManager/NetworkManager!775, bsc#1183967 sck...@suse.com -- bond: restore MAC on release only when there is a cloned MAC address Patch8: NM-restore-MAC-on-release-only-when-cloned.patch # PATCH-FIX-UPSTREAM nm-fix-dhcp-client-timeout.patch glfo#NetworkManager/NetworkManager!811, bsc#1183202 sck...@suse.com -- Better handle dhclient's timeout so that a recorded lease can be used when dhcp server is down. Patch9: nm-fix-dhcp-client-timeout.patch BuildRequires: dnsmasq BuildRequires: fdupes BuildRequires: intltool BuildRequires: iptables BuildRequires: libtool BuildRequires: ncurses-devel BuildRequires: pkgconfig BuildRequires: ppp-devel # Required for tests BuildRequires: python3-dbus-python BuildRequires: python3-gobject BuildRequires: readline-devel BuildRequires: rp-pppoe # Do not use suse-release, it's very late in build chain and not needed # all it does is netconfig and ifconfig enablement #BuildRequires: suse-release # for /sbin/netconfig: integration with netconfig is required BuildRequires: sysconfig-netconfig BuildRequires: translation-update-upstream BuildRequires: wireless-tools BuildRequires: perl(YAML) BuildRequires: pkgconfig(bluez) >= 5 BuildRequires: pkgconfig(dbus-1) BuildRequires: pkgconfig(dbus-glib-1) >= 0.94 BuildRequires: pkgconfig(glib-2.0) >= 2.32 BuildRequires: pkgconfig(gobject-introspection-1.0) BuildRequires: pkgconfig(gtk-doc) BuildRequires: pkgconfig(jansson) BuildRequires: pkgconfig(libcurl) BuildRequires: pkgconfig(libndp) BuildRequires: pkgconfig(libnewt) >= 0.52.15 BuildRequires: pkgconfig(libnl-3.0) >= 3.2.8 BuildRequires: pkgconfig(libnl-genl-3.0) BuildRequires: pkgconfig(libnl-route-3.0) BuildRequires: pkgconfig(libpsl) >= 0.1 BuildRequires: pkgconfig(libsystemd) >= 209 BuildRequires: pkgconfig(libteam) BuildRequires: pkgconfig(libudev) >= 175 BuildRequires: pkgconfig(mm-glib) >= 0.7.991 BuildRequires: pkgconfig(nss) BuildRequires: pkgconfig(polkit-agent-1) >= 0.97 BuildRequires: pkgconfig(udev) BuildRequires: pkgconfig(uuid) BuildRequires: pkgconfig(vapigen) Requires: NetworkManager-branding Requires: dhcp-client Requires: iproute2 Requires: iputils Requires: mozilla-nss Requires: sysconfig-netconfig >= 0.80.5 Requires: wpa_supplicant >= 0.6.4 %requires_eq ppp Recommends: dnsmasq Recommends: iptables Recommends: org.freedesktop.ModemManager # Recommend the rp-pppoe binary for PPP over Ethernet (common for ADSL) connections. Recommends: rp-pppoe Provides: dhcdbd = 1.14 Obsoletes: dhcdbd < 1.14 Obsoletes: libnm-glib-vpn1 Obsoletes: libnm-glib4 Obsoletes: libnm-util2 %{?systemd_requires} %description NetworkManager attempts to keep an active network connection available at all times. The point of NetworkManager is to make networking configuration and setup as painless and automatic as possible. If using DHCP, NetworkManager is intended to replace default routes, obtain IP addresses from a DHCP server, and change name servers whenever it sees fit. %package devel Summary: Libraries and headers for adding NetworkManager support to applications Group: Development/Libraries/Other Requires: %{name} = %{version} Requires: libnm0 = %{version} Requires: typelib-1_0-NM-1_0 = %{version} Provides: %{name}-doc = %{version} Obsoletes: %{name}-doc < %{version} %description devel This package contains various headers accessing some NetworkManager functionality from applications. %package -n libnm0 Summary: Convenience library for clients of NetworkManager Group: System/Libraries %description -n libnm0 This package contains the libraries that make it easier to use some Network Manager functionality from applications that use glib. %package -n typelib-1_0-NM-1_0 Summary: Introspection bindings for the NetworkManager client convenience library Group: System/Libraries %description -n typelib-1_0-NM-1_0 This package contains the gi-bindings that make it easier to use some Network Manager functionality from applications that use glib. This package provides the GObject Introspection bindings for the NetworkManager library. %package branding-upstream Summary: Default upstream configuration for %{_sysconfdir}/NetworkManager/NetworkManager.conf Group: Productivity/Networking/System Requires: NetworkManager = %{version} Supplements: packageand(NetworkManager:branding-upstream) Conflicts: NetworkManager-branding Provides: NetworkManager-branding = %{version} BuildArch: noarch %description branding-upstream This package provides the default upstream configuration for %{_sysconfdir}/NetworkManager/NetworkManager.conf. Specifically, it is not configured for connection checking against http://conncheck.opensuse.org. For, the version with connection checking, install %{name}-branding-openSUSE. %lang_package %prep %setup -q translation-update-upstream %patch0 -p1 %if %{with_cacert_patch} %patch1 -p1 %endif #patch2 -p1 #patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 %patch7 -p1 %patch8 -p1 %patch9 -p1 %build NOCONFIGURE=1 ./autogen.sh pppddir=`ls -1d %{_libdir}/pppd/2*` test -n "$pppddir" || exit 1 export CFLAGS="%{optflags} -fno-strict-aliasing -fcommon" export PYTHON=%{_bindir}/python3 %configure \ --disable-silent-rules \ --with-hostname-persist=suse \ --enable-ld-gc \ --disable-static \ --with-crypto=nss \ --enable-gtk-doc \ --enable-json-validation \ --with-tests=yes \ --with-netconfig=yes \ --with-config-dns-rc-manager-default=netconfig \ --enable-more-warnings=no \ --with-pppd-plugin-dir=$pppddir \ --with-dhclient=/sbin/dhclient \ --with-dhcpcd=no \ --with-udev-dir=%{_udevdir} \ --with-modem-manager-1 \ --enable-concheck \ --enable-wifi=yes \ --with-nmtui \ --with-session-tracking=systemd \ --with-suspend-resume=systemd \ --with-iwd=yes # Fail if netconfig was not detected. Avoids future occurences of bnc#817592 if grep "with_netconfig='no'" config.log; then print netconfig support was not found -- BUILD ABORTED false fi make %{?_smp_mflags} nmrundir="/run/%{name}" %check #make %%{?_smp_mflags} check %install %make_install nmrundir="/run/%{name}" find %{buildroot} -type f -name "*.la" -delete -print %find_lang %{name} %fdupes %{buildroot}%{_datadir}/gtk-doc/ mkdir -p %{buildroot}%{_bindir} mkdir -p %{buildroot}%{_sysconfdir}/NetworkManager/VPN mkdir -p %{buildroot}%{_localstatedir}/log/ mkdir -p %{buildroot}%{_localstatedir}/lib/NetworkManager touch %{buildroot}%{_localstatedir}/log/NetworkManager mkdir -p %{buildroot}%{_sysconfdir}/NetworkManager/system-connections install -m 0755 %{SOURCE1} %{buildroot}%{_sysconfdir}/NetworkManager/dispatcher.d/ install -m 0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/NetworkManager/ # We package this one as %%doc in the default location. rm %{buildroot}%{_datadir}/doc/NetworkManager/examples/server.conf # drop on demand activation, it is handled as a system service rm -f %{buildroot}%{_datadir}/dbus-1/system-services/org.freedesktop.NetworkManager.service %pre %service_add_pre NetworkManager.service NetworkManager-dispatcher.service nm-cloud-setup.service %post %service_add_post NetworkManager.service NetworkManager-dispatcher.service nm-cloud-setup.service %preun %service_del_preun NetworkManager.service NetworkManager-dispatcher.service nm-cloud-setup.service %postun %service_del_postun NetworkManager.service NetworkManager-dispatcher.service nm-cloud-setup.service %post -n libnm0 -p /sbin/ldconfig %postun -n libnm0 -p /sbin/ldconfig %files %license COPYING %doc ChangeLog NEWS AUTHORS README CONTRIBUTING TODO data/server.conf %{_bindir}/nm-online %{_bindir}/nmcli %{_bindir}/nmtui* %{_datadir}/bash-completion/completions/nmcli %{_sbindir}/NetworkManager %{_datadir}/dbus-1/system-services/org.freedesktop.nm_dispatcher.service %{_datadir}/dbus-1/interfaces/org.freedesktop.NetworkManager.* %{_datadir}/polkit-1/actions/org.freedesktop.NetworkManager.policy %attr(0700,root,root) %{_localstatedir}/lib/NetworkManager %{_mandir}/man1/nm-online.1%{ext_man} %{_mandir}/man1/nmcli.1%{ext_man} %{_mandir}/man1/nmtui.1%{?ext_man} %{_mandir}/man1/nmtui-connect.1%{?ext_man} %{_mandir}/man1/nmtui-edit.1%{?ext_man} %{_mandir}/man1/nmtui-hostname.1%{?ext_man} %{_mandir}/man5/nm-settings-keyfile.5%{?ext_man} %{_mandir}/man5/NetworkManager.conf.5%{?ext_man} %{_mandir}/man5/nm-settings.5%{?ext_man} %{_mandir}/man5/nm-system-settings.conf.5%{?ext_man} %{_mandir}/man7/nm-openvswitch.7%{?ext_man} %{_mandir}/man7/nmcli-examples.7%{?ext_man} %{_mandir}/man8/NetworkManager.8%{ext_man} %{_mandir}/man8/nm-initrd-generator.8%{ext_man} %dir %{_libdir}/NetworkManager %dir %{_libdir}/NetworkManager/%{version} %{_libdir}/NetworkManager/%{version}/libnm-device-plugin-adsl.so %{_libdir}/NetworkManager/%{version}/libnm-device-plugin-bluetooth.so %{_libdir}/NetworkManager/%{version}/libnm-device-plugin-ovs.so %{_libdir}/NetworkManager/%{version}/libnm-device-plugin-team.so %{_libdir}/NetworkManager/%{version}/libnm-device-plugin-wifi.so %{_libdir}/NetworkManager/%{version}/libnm-device-plugin-wwan.so %{_libdir}/NetworkManager/%{version}/libnm-ppp-plugin.so #%%{_libdir}/NetworkManager/%%{version}/libnm-settings-plugin-ibft.so %{_libdir}/NetworkManager/%{version}/libnm-wwan.so %dir %{_libdir}/pppd/2.* %{_libdir}/pppd/2.*/nm-pppd-plugin.* %{_libexecdir}/nm-cloud-setup %{_libexecdir}/nm-dhcp-helper %{_libexecdir}/nm-dispatcher %{_libexecdir}/nm-iface-helper %{_libexecdir}/nm-initrd-generator %config %{_sysconfdir}/dbus-1/system.d/org.freedesktop.NetworkManager.conf %config %{_sysconfdir}/dbus-1/system.d/nm-dispatcher.conf %dir %{_sysconfdir}/NetworkManager %dir %{_sysconfdir}/NetworkManager/VPN %dir %{_sysconfdir}/NetworkManager/dispatcher.d %dir %{_sysconfdir}/NetworkManager/system-connections %attr(0755,root,root) %{_sysconfdir}/NetworkManager/dispatcher.d/nfs %{_unitdir}/NetworkManager.service %{_unitdir}/NetworkManager-dispatcher.service %{_unitdir}/NetworkManager-wait-online.service %dir %{_unitdir}/NetworkManager.service.d %{_unitdir}/NetworkManager.service.d/NetworkManager-ovs.conf %{_udevdir}/rules.d/84-nm-drivers.rules %{_udevdir}/rules.d/85-nm-unmanaged.rules %{_udevdir}/rules.d/90-nm-thunderbolt.rules %{_unitdir}/nm-cloud-setup.service %{_unitdir}/nm-cloud-setup.timer %ghost %config(noreplace) %{_localstatedir}/log/NetworkManager %dir %{_prefix}/lib/NetworkManager %dir %{_prefix}/lib/NetworkManager/dispatcher.d %dir %{_prefix}/lib/NetworkManager/dispatcher.d/no-wait.d %{_prefix}/lib/NetworkManager/dispatcher.d/90-nm-cloud-setup.sh %{_prefix}/lib/NetworkManager/dispatcher.d/no-wait.d/90-nm-cloud-setup.sh %files devel %{_includedir}/libnm/ %{_datadir}/gir-1.0/*.gir %dir %{_datadir}/vala/vapi %{_datadir}/vala/vapi/libnm.deps %{_datadir}/vala/vapi/libnm.vapi %{_libdir}/libnm.so %{_libdir}/pkgconfig/libnm.pc %doc %{_datadir}/gtk-doc/html/NetworkManager/ %doc %{_datadir}/gtk-doc/html/libnm/ %files -n libnm0 %{_libdir}/libnm.so.* %files -n typelib-1_0-NM-1_0 %{_libdir}/girepository-1.0/NM-1.0.typelib %files lang -f %{name}.lang %files branding-upstream %config(noreplace) %{_sysconfdir}/NetworkManager/NetworkManager.conf %changelog ++++++ 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch ++++++ >From 3e53521b50b7150118fbb729def0a2a1364c5aae Mon Sep 17 00:00:00 2001 From: Antonio Larrosa <antonio.larr...@gmail.com> Date: Thu, 21 Mar 2019 11:08:36 +0100 Subject: [PATCH] Coerce connectivity "LIMITED" to "NONE" when device is disconnected If the device is disconnected it can't have any connectivity, so we can set it to NONE instead of LIMITED. Fixes #138 --- src/devices/nm-device.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) Index: NetworkManager-1.20.0/src/devices/nm-device.c =================================================================== --- NetworkManager-1.20.0.orig/src/devices/nm-device.c +++ NetworkManager-1.20.0/src/devices/nm-device.c @@ -2887,7 +2887,8 @@ concheck_update_state (NMDevice *self, state = NM_CONNECTIVITY_LIMITED; } else state = NM_CONNECTIVITY_NONE; - } + } else if (state == NM_CONNECTIVITY_LIMITED && priv->state <= NM_DEVICE_STATE_DISCONNECTED) + state = NM_CONNECTIVITY_NONE; if (priv->concheck_x[IS_IPv4].state == state) { /* we got a connectivty update, but the state didn't change. If we were probing, ++++++ NM-restore-MAC-on-release-only-when-cloned.patch ++++++ >From 190fd9aa9f3fbf5705c2b80b9fc64c89d22b7593 Mon Sep 17 00:00:00 2001 From: Beniamino Galvani <bgalv...@redhat.com> Date: Sat, 6 Mar 2021 11:35:12 +0100 Subject: [PATCH] bond: restore MAC on release only when there is a cloned MAC address Currently we unconditionally reset the MAC to the previous value after releasing ports. This has some disadvantages: - by default, after the last port is removed the bond will have one of the previous port's address, which could conflict with the port; - in some cases, changing the bond MAC is not possible. For example when the bond is active-backup and has fail_over_mac=1|2. In such case the netlink call succeeds, but the address doesn't change; then NM would keep waiting for some time. Don't try to restore the MAC unless the bond connection has a cloned MAC set. https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/775 --- src/devices/nm-device-bond.c | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) Index: NetworkManager-1.22.16/src/devices/nm-device-bond.c =================================================================== --- NetworkManager-1.22.16.orig/src/devices/nm-device-bond.c +++ NetworkManager-1.22.16/src/devices/nm-device-bond.c @@ -413,6 +413,10 @@ release_slave (NMDevice *device, /* When the last slave is released the bond MAC will be set to a random * value by kernel; remember the current one and restore it afterwards. */ + NMConnection * applied; + NMSettingWired *s_wired; + const char * cloned_mac; + address = g_strdup (nm_device_get_hw_address (device)); if (ifindex_slave > 0) { @@ -429,9 +433,16 @@ release_slave (NMDevice *device, } } - nm_platform_process_events (nm_device_get_platform (device)); - if (nm_device_update_hw_address (device)) - nm_device_hw_addr_set (device, address, "restore", FALSE); + if ((applied = nm_device_get_applied_connection(device)) + && ((s_wired = nm_connection_get_setting_wired(applied))) + && ((cloned_mac = nm_setting_wired_get_cloned_mac_address(s_wired)))) { + /* When the last slave is released the bond MAC will be set to a random + * value by kernel; if we have set a cloned-mac-address, we need to + * restore it to the previous value. */ + nm_platform_process_events(nm_device_get_platform(device)); + if (nm_device_update_hw_address(device)) + nm_device_hw_addr_set(device, address, "restore", FALSE); + } /* Kernel bonding code "closes" the slave when releasing it, (which clears * IFF_UP), so we must bring it back up here to ensure carrier changes and ++++++ NetworkManager-1.10.6-netconfig.patch ++++++ Index: NetworkManager-1.20.0/src/dns/nm-dns-manager.c =================================================================== --- NetworkManager-1.20.0.orig/src/dns/nm-dns-manager.c +++ NetworkManager-1.20.0/src/dns/nm-dns-manager.c @@ -546,9 +546,17 @@ dispatch_netconfig (NMDnsManager *self, gssize l; nm_auto_free_gstring GString *str = NULL; + if (!g_file_test (NETCONFIG_PATH, G_FILE_TEST_IS_EXECUTABLE)) { + g_set_error_literal (error, + NM_MANAGER_ERROR, + NM_MANAGER_ERROR_FAILED, + NETCONFIG_PATH " is not executable"); + return SR_NOTFOUND; + } + pid = run_netconfig (self, error, &fd); if (pid <= 0) - return SR_NOTFOUND; + return SR_ERROR; str = g_string_new (""); ++++++ NetworkManager-rpmlintrc ++++++ # We have an unversioned suse-branding-unversioned-requires # NetworkManager-branding on purpose, hence filter it out. addFilter("suse-branding-unversioned-requires*"); # Filter out warning about missing systemd-service-without-service # post/pre/postun/preun, we do not want to enable this service by # default. addFilter("systemd-service-without-service_add_post NetworkManager-wait-online.service"); addFilter("systemd-service-without-service_add_pre NetworkManager-wait-online.service"); addFilter("systemd-service-without-service_del_postun NetworkManager-wait-online.service"); addFilter("systemd-service-without-service_del_preun NetworkManager-wait-online.service"); ++++++ NetworkManager.conf ++++++ [main] plugins=keyfile dhcp=dhclient ++++++ baselibs.conf ++++++ NetworkManager-devel requires -NetworkManager-<targettype> ++++++ networkmanager-checks-po.patch ++++++ Index: NetworkManager-1.20.0/po/POTFILES.skip =================================================================== --- NetworkManager-1.20.0.orig/po/POTFILES.skip +++ NetworkManager-1.20.0/po/POTFILES.skip @@ -1,4 +1,5 @@ data/NetworkManager.service.in +data/NetworkManager-wait-online.service.in examples/python/NetworkManager.py examples/python/systray/eggtrayicon.c data/org.freedesktop.NetworkManager.policy.in ++++++ networkmanager-obs-net.patch ++++++ Index: NetworkManager-1.10.2/Makefile.am =================================================================== --- NetworkManager-1.10.2.orig/Makefile.am +++ NetworkManager-1.10.2/Makefile.am @@ -2859,15 +2859,10 @@ check_programs_norun += \ check_programs += \ src/platform/tests/test-link-fake \ - src/platform/tests/test-link-linux \ src/platform/tests/test-address-fake \ - src/platform/tests/test-address-linux \ src/platform/tests/test-general \ - src/platform/tests/test-nmp-object \ src/platform/tests/test-route-fake \ - src/platform/tests/test-route-linux \ - src/platform/tests/test-cleanup-fake \ - src/platform/tests/test-cleanup-linux + src/platform/tests/test-cleanup-fake src_platform_tests_monitor_CPPFLAGS = $(src_tests_cppflags) src_platform_tests_monitor_LDFLAGS = $(src_platform_tests_ldflags) @@ -2941,8 +2936,7 @@ src_devices_tests_ldflags = \ $(CODE_COVERAGE_LDFLAGS) check_programs += \ - src/devices/tests/test-lldp \ - src/devices/tests/test-arping + src/devices/tests/test-lldp src_devices_tests_test_lldp_CPPFLAGS = $(src_tests_cppflags) src_devices_tests_test_lldp_LDFLAGS = $(src_devices_tests_ldflags) ++++++ nfs ++++++ #! /bin/bash # # nfs - start NFS in response to interface change # # Bastian Senst <bho...@lusku.de> function net_umount { umount -l -f $1 &>/dev/null } function net_mount { mountpoint -q $1 || mount $1 } function test_reach { if [ "$(ip link show up $1)" = "" ]; then return 1 else ping -n -c1 -w2 -I "$1" "$2" 2>&1 > /dev/null fi } DEVICE="$1" COMMAND="$2" function test_other_reaches { for other in $(ls /sys/class/net); do if [[ "$other" != "$DEVICE" ]]; then if test_reach "$other" "$1"; then return 0 fi fi done return 1 } declare -A reaches function other_reaches { if [[ "${reaches[$1]-}" == "yes" ]]; then return 0 elif [[ "${reaches[$1]-}" == "no" ]]; then return 1 else if test_other_reaches $1; then reaches[$1]="yes" return 0 else reaches[$1]="no" return 1 fi fi } NET_MOUNTS=$(sed -e '/^.*#/d' -e '/^.*:/!d' -e 's/\t/ /g' /etc/fstab | tr -s " ")$'\n' case "$COMMAND" in up|dhcp4-change|dhcp6-change) # Check with systemd if nfs service is enabled if /usr/bin/systemctl is-enabled nfs-client.target >/dev/null 2>&1; then printf %s "$NET_MOUNTS" | while IFS= read -r line; do MOUNT_OPTIONS=$(echo $line | cut -f4 -d" ") MOUNT_POINT=$(echo $line | cut -f2 -d" ") FS_TYPE=$(echo $line | cut -f3 -d" ") # Only mount it if not "noauto "set in options case ",${MOUNT_OPTIONS}," in *,noauto,*) continue ;; esac # Only mount it when the type is nfs or nfs4 if [ "$FS_TYPE" == "nfs" -o "$FS_TYPE" == "nfs4" ]; then net_mount "$MOUNT_POINT" fi done fi ;; pre-down|down|vpn-pre-down) printf %s "$NET_MOUNTS" | while IFS= read -r line; do [[ $line ]] || continue MOUNT_POINT=$(echo $line | cut -f2 -d" ") FS_TYPE=$(echo $line | cut -f3 -d" ") HOST=$(echo $line | cut -f1 -d":") if other_reaches $HOST; then echo >&2 "Other network interfaces reach $HOST for $MOUNT_POINT." else # Only unmount it when the type is nfs or nfs4 if [ "$FS_TYPE" == "nfs" -o "$FS_TYPE" == "nfs4" ]; then net_umount "$MOUNT_POINT" fi fi done exit 0 ;; *) exit 0 ;; esac ++++++ nm-add-CAP_SYS_ADMIN-permission.patch ++++++ Index: NetworkManager-1.24.2/data/NetworkManager.service.in =================================================================== --- NetworkManager-1.24.2.orig/data/NetworkManager.service.in +++ NetworkManager-1.24.2/data/NetworkManager.service.in @@ -14,7 +14,7 @@ ExecStart=@sbindir@/NetworkManager --no- Restart=on-failure # NM doesn't want systemd to kill its children for it KillMode=process -CapabilityBoundingSet=CAP_NET_ADMIN CAP_DAC_OVERRIDE CAP_NET_RAW CAP_NET_BIND_SERVICE CAP_SETGID CAP_SETUID CAP_SYS_MODULE CAP_AUDIT_WRITE CAP_KILL CAP_SYS_CHROOT +CapabilityBoundingSet=CAP_NET_ADMIN CAP_DAC_OVERRIDE CAP_NET_RAW CAP_NET_BIND_SERVICE CAP_SETGID CAP_SETUID CAP_SYS_MODULE CAP_AUDIT_WRITE CAP_KILL CAP_SYS_CHROOT CAP_SYS_ADMIN ProtectSystem=true ProtectHome=read-only ++++++ nm-dont-overwrite-resolv-conf.patch ++++++ Index: NetworkManager-1.20.0/src/dns/nm-dns-manager.c =================================================================== --- NetworkManager-1.20.0.orig/src/dns/nm-dns-manager.c +++ NetworkManager-1.20.0/src/dns/nm-dns-manager.c @@ -571,7 +571,7 @@ again: nm_close (fd); /* Wait until the process exits */ - if (!nm_utils_kill_child_sync (pid, 0, LOGD_DNS, "netconfig", &status, 1000, 0)) { + if (!nm_utils_kill_child_sync (pid, 0, LOGD_DNS, "netconfig", &status, 0, 0)) { errsv = errno; g_set_error (error, NM_MANAGER_ERROR, NM_MANAGER_ERROR_FAILED, "Error waiting for netconfig to exit: %s", ++++++ nm-fix-dhcp-client-timeout.patch ++++++ Index: NetworkManager-1.22.10/src/dhcp/nm-dhcp-client.c =================================================================== --- NetworkManager-1.22.10.orig/src/dhcp/nm-dhcp-client.c +++ NetworkManager-1.22.10/src/dhcp/nm-dhcp-client.c @@ -420,9 +420,6 @@ nm_dhcp_client_set_state (NMDhcpClient * if (NM_IN_SET (new_state, NM_DHCP_STATE_BOUND, NM_DHCP_STATE_EXTENDED)) { g_return_if_fail (NM_IS_IP_CONFIG (ip_config, priv->addr_family)); g_return_if_fail (options); - } else { - g_return_if_fail (!ip_config); - g_return_if_fail (!options); } if (new_state >= NM_DHCP_STATE_BOUND) @@ -436,7 +433,7 @@ nm_dhcp_client_set_state (NMDhcpClient * * events since the lease won't have changed and the state was already handled. */ if ( (priv->state == new_state) - && !NM_IN_SET (new_state, NM_DHCP_STATE_BOUND, NM_DHCP_STATE_EXTENDED)) + && !NM_IN_SET (new_state, NM_DHCP_STATE_BOUND, NM_DHCP_STATE_EXTENDED, NM_DHCP_STATE_TIMEOUT)) return; if (_LOGI_ENABLED ()) { @@ -524,8 +521,8 @@ nm_dhcp_client_start_timeout (NMDhcpClie return; priv->timeout_id = g_timeout_add_seconds (priv->timeout, - transaction_timeout, - self); + transaction_timeout, + self); } void @@ -536,8 +533,6 @@ nm_dhcp_client_watch_child (NMDhcpClient g_return_if_fail (priv->pid == -1); priv->pid = pid; - nm_dhcp_client_start_timeout (self); - g_return_if_fail (priv->watch_id == 0); priv->watch_id = g_child_watch_add (pid, daemon_watch_cb, self); } @@ -880,7 +875,7 @@ nm_dhcp_client_handle_event (gpointer un _LOGD ("DHCP state '%s' -> '%s' (reason: '%s')", state_to_string (old_state), state_to_string (new_state), reason); - if (NM_IN_SET (new_state, NM_DHCP_STATE_BOUND, NM_DHCP_STATE_EXTENDED)) { + if (NM_IN_SET (new_state, NM_DHCP_STATE_BOUND, NM_DHCP_STATE_EXTENDED, NM_DHCP_STATE_TIMEOUT)) { GVariantIter iter; const char *name; GVariant *value; Index: NetworkManager-1.22.10/src/devices/nm-device.c =================================================================== --- NetworkManager-1.22.10.orig/src/devices/nm-device.c +++ NetworkManager-1.22.10/src/devices/nm-device.c @@ -8000,7 +8000,39 @@ dhcp4_state_changed (NMDhcpClient *clien } break; case NM_DHCP_STATE_TIMEOUT: - dhcp4_fail (self, state); + /* If got valid ip config from recorded lease file */ + if (!ip4_config) { + _LOGI (LOGD_DHCP4, "DHCP timed out and no valid lease file is available."); + dhcp4_fail (self, TRUE); + } else { + nm_dhcp4_config_set_options (priv->dhcp4.config, options); + _notify (self, PROP_DHCP4_CONFIG); + + if (priv->ip_state_4 == NM_DEVICE_IP_STATE_CONF) { + connection = nm_device_get_applied_connection (self); + g_assert (connection); + + manual = nm_device_ip4_config_new (self); + nm_ip4_config_merge_setting (manual, + nm_connection_get_setting_ip4_config (connection), + NM_SETTING_CONNECTION_MDNS_DEFAULT, + NM_SETTING_CONNECTION_LLMNR_DEFAULT, + nm_device_get_route_table (self, AF_INET), + nm_device_get_route_metric (self, AF_INET)); + + configs = g_new0 (NMIP4Config *, 3); + configs[0] = manual; + configs[1] = g_object_ref (ip4_config); + + ipv4_dad_start (self, configs, dhcp4_dad_cb); + } else if (priv->ip_state_4 == NM_DEVICE_IP_STATE_DONE) { + if (dhcp4_lease_change (self, ip4_config, + state == NM_DHCP_STATE_BOUND)) + nm_device_update_metered (self); + else + dhcp4_fail (self, state); + } + } break; case NM_DHCP_STATE_EXPIRE: /* Ignore expiry before we even have a lease (NAK, old lease, etc) */ ++++++ nm-probe-radius-server-cert.patch ++++++ ++++ 1393 lines (skipped) ++++++ systemd-network-config.patch ++++++ Index: NetworkManager-1.20.0/data/NetworkManager.service.in =================================================================== --- NetworkManager-1.20.0.orig/data/NetworkManager.service.in +++ NetworkManager-1.20.0/data/NetworkManager.service.in @@ -1,7 +1,7 @@ [Unit] Description=Network Manager Documentation=man:NetworkManager(8) -Wants=network.target +Wants=remote-fs.target network.target After=network-pre.target dbus.service Before=network.target @DISTRO_NETWORK_SERVICE@ @@ -21,6 +21,7 @@ ProtectHome=read-only [Install] WantedBy=multi-user.target +Alias=network.service Also=NetworkManager-dispatcher.service # We want to enable NetworkManager-wait-online.service whenever this service Index: NetworkManager-1.20.0/data/NetworkManager-wait-online.service.in =================================================================== --- NetworkManager-1.20.0.orig/data/NetworkManager-wait-online.service.in +++ NetworkManager-1.20.0/data/NetworkManager-wait-online.service.in @@ -7,7 +7,9 @@ Before=network-online.target [Service] Type=oneshot -ExecStart=@bindir@/nm-online -s -q --timeout=30 +Environment=NM_ONLINE_TIMEOUT=0 +EnvironmentFile=-/etc/sysconfig/network/config +ExecStart=/bin/bash -c "if [ ${NM_ONLINE_TIMEOUT} -gt 0 ]; then @bindir@/nm-online -s -q --timeout=${NM_ONLINE_TIMEOUT} ; else /bin/true ; fi" RemainAfterExit=yes [Install]