{"object_kind":"push","event_name":"push","before":"96a8982e5d8ec742b033709932e77902a8f3924a","after":"824ebf8c2ea5bfbefdc1e0b4da363a41215f7bb3","ref":"refs/heads/nm-1-54","ref_protected":false,"checkout_sha":"824ebf8c2ea5bfbefdc1e0b4da363a41215f7bb3","message":null,"user_id":94562,"user_name":"Íñigo Huguet","user_username":"ihuguet","user_email":"","user_avatar":"https://gitlab.freedesktop.org/uploads/-/system/user/avatar/94562/avatar.png","project_id":411,"project":{"id":411,"name":"NetworkManager","description":"NetworkManager — network management daemon","web_url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager","avatar_url":"https://gitlab.freedesktop.org/uploads/-/system/project/avatar/411/nm_logo.png","git_ssh_url":"git@ssh.gitlab.freedesktop.org:NetworkManager/NetworkManager.git","git_http_url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git","namespace":"NetworkManager","visibility_level":20,"path_with_namespace":"NetworkManager/NetworkManager","default_branch":"main","ci_config_path":"","homepage":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager","url":"git@ssh.gitlab.freedesktop.org:NetworkManager/NetworkManager.git","ssh_url":"git@ssh.gitlab.freedesktop.org:NetworkManager/NetworkManager.git","http_url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git"},"commits":[{"id":"7e1c72fa63d6884daa1940a8a3998f0c6356c9fe","message":"device: explicitly handle unrealized devices in is_available()\n\nUnrealized software devices are always available for activation,\nhardware devices never.\n\nIn nm_manager_get_best_device_for_activation() we call\nnm_device_is_available() on candidate devices. Without this fix, any\nunrealized software device would be not considered ready for\nactivation, which is wrong.\n\nA software device can override the default implementation of\nis_available(). For example NMDeviceOvsInterface does that and only\nchecks the OVSDB is ready.\n\nFixes: ba86c208e0aa ('Revert \"core: prevent the activation of unavailable OVS interfaces only\"')\n\nhttps://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2253\n(cherry picked from commit 8b26cb35eeca8ef808272b8f47340ab6c0e077ee)\n","title":"device: explicitly handle unrealized devices in is_available()","timestamp":"2025-09-12T13:15:18+02:00","url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/7e1c72fa63d6884daa1940a8a3998f0c6356c9fe","author":{"name":"Beniamino Galvani","email":"bgalvani@redhat.com"},"added":[],"modified":["src/core/devices/nm-device.c"],"removed":[]},{"id":"de46cf1ee9481f85396d55db17ce4a9865db0ce3","message":"manager: unrealize device again after failure\n\nIf the device was realized in _internal_activate_device() and the\nactivation failed to start, unrealize the device again so that it\ndoesn't stay around.\n\nFixes-test: @ovs_delete_connecting_interface\n\nhttps://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2263\n(cherry picked from commit 7242c478a1bbc74ff738cc7e65762f66be47b561)\n","title":"manager: unrealize device again after failure","timestamp":"2025-09-12T13:17:01+02:00","url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/de46cf1ee9481f85396d55db17ce4a9865db0ce3","author":{"name":"Beniamino Galvani","email":"bgalvani@redhat.com"},"added":[],"modified":["src/core/nm-manager.c"],"removed":[]},{"id":"ec93c9d282dc9e73fc2566554a4114a2c86e79b2","message":"bond: remove `lacp_active` option from reapply subset\n\nNM_SETTING_BOND_OPTION_LACP_ACTIVE is flagged as BOND_OPTFLAG_IFDOWN in\nthe kernel and hence should not be in OPTIONS_REAPPLY_SUBSET.\n\nAuthored-by: Mohith Kumar Thummaluru \nSigned-off-by: Mohith Kumar Thummaluru \nSigned-off-by: Pradyumn Rahar \n(cherry picked from commit 9c48bae3b2747fb182f74897c8b8251cb820c804)\n","title":"bond: remove `lacp_active` option from reapply subset","timestamp":"2025-09-12T13:19:31+02:00","url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/ec93c9d282dc9e73fc2566554a4114a2c86e79b2","author":{"name":"Pradyumn Rahar","email":"pradyumn.rahar@oracle.com"},"added":[],"modified":["src/core/devices/nm-device-bond.c"],"removed":[]},{"id":"48eae2e76d74877efc74bf518754809e9b3e88ee","message":"core: dbus: accept global DNS configuration without a default domain\n\nSince 1.44 we accept a global-dns section without any global-dns-domain\nsection, so users can define searches and options without defining any\nglobal DNS servers.\n\nWhen set from the D-Bus API it was still rejected. Fix it.\n\nFixes: 1f0d1d78d2a2 ('dns-manager: always apply options from [global-dns]')\n(cherry picked from commit 294131a2a41f8773aaf15abebb461fb3fbf7a7dc)\n","title":"core: dbus: accept global DNS configuration without a default domain","timestamp":"2025-09-12T13:20:13+02:00","url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/48eae2e76d74877efc74bf518754809e9b3e88ee","author":{"name":"Íñigo Huguet","email":"ihuguet@riseup.net"},"added":[],"modified":["src/core/nm-config-data.c"],"removed":[]},{"id":"f92a2bfd1f572a23055cb27fe0a0fbccc860a617","message":"dns: make [global-dns] to overwrite configs from connections\n\nAccording to the documentation, settings from [global-dns] (searches and\noptions) are always merged with those from connections. However this was\nnot happening if no [global-dns-domain-*] exists, in which case\nconnections were ignored. This happened because in the past both global\nsections must de defined or undefined. When this was changed to allow\ndefining only [global-dns], allowing it in the function that generates\nthe resolv.conf file was forgotten. Fix that now.\n\nAnyway, merging these configs doesn't make much sense. The searches and\noptions defined in connections probably make sense only for the nameservers\ndefined in that same connection.\n\nBecause of this, make the following change: if global nameservers are\ndefined, use searches and options from [global-dns] only, because those\ndefined in connections may not make sense for the global nameservers. If\n[global-dns] is missing, assume an empty [global-dns] section.\n\nAlso, if no global nameservers are defined, but [global-dns] is, make\nthat it overwrites the searches and options defined in connections. This\nis not ideal, but none of the alternatives is better and at least this\nis easy to remember.\n\nSo, the resulting rules from above are:\n- If [global-dns] is defined, it always overwrite searches and options\n from connections.\n- If [global-dns-domain-*] is defined, it always overwrite nameservers\n from connections. It overwrites searches and options too.\n\nFixes: 1f0d1d78d2a2 ('dns-manager: always apply options from [global-dns]')\nFixes: f57a848da5aa ('man: update documentation about global DNS configuration')\n(cherry picked from commit 1cba0a3cca80d2dc8436d8ffdf58506d9eb95846)\n","title":"dns: make [global-dns] to overwrite configs from connections","timestamp":"2025-09-12T13:20:13+02:00","url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/f92a2bfd1f572a23055cb27fe0a0fbccc860a617","author":{"name":"Íñigo Huguet","email":"ihuguet@riseup.net"},"added":[],"modified":["man/NetworkManager.conf.xml","src/core/dns/nm-dns-manager.c","src/core/nm-config-data.c","src/core/nm-config-data.h","src/core/nm-l3-config-data.c","src/core/nm-l3-config-data.h"],"removed":[]},{"id":"58e776c3a8b601e8d529f622f8ce463cf1ddeb95","message":"core: dns: show in D-Bus if [global-dns] is defined but empty\n\nClients like nmstate needs to know if the [global-dns] section is\ndefined or not, so they know if DNS configs from connections are\nrelevant or not. Expose it in D-Bus by always exposing \"searches\"\nand \"options\" if it's defined, maybe as empty lists.\n\n(cherry picked from commit 7fb4724efa73f87ef5676504631fd8f58e388c9f)\n","title":"core: dns: show in D-Bus if [global-dns] is defined but empty","timestamp":"2025-09-12T13:20:14+02:00","url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/58e776c3a8b601e8d529f622f8ce463cf1ddeb95","author":{"name":"Íñigo Huguet","email":"ihuguet@riseup.net"},"added":[],"modified":["src/core/nm-config-data.c"],"removed":[]},{"id":"2de3de0c28f93b2724686b65cae1cd7fce90e351","message":"core: keep empty groups from keyfile configs\n\nWhen reading NetworkManager.conf and NetworkManager-intern.conf we might\nneed to know if a group is defined or not, even if it's empty. This is\nthe case, for example, for [global-dns]. If [global-dns] is defined in\nNM.conf overwrites the config from NM-intern, and if it's defined in any\nof them they overwrite the configs from connections.\n\nBefore this patch, defining it as an empty group was ignored:\n```\n[global-dns]\n```\n\nInstead, it was necessary to add at least one key-value to the group.\nOtherwise the group was silently ignored.\n```\n[global-dns]\nsearches=\n```\n\nKeep empty groups so we can take better decissions about overwritting\nconfigs from other sources.\n\n(cherry picked from commit 4a46f454da5fbe6668c2eaecdeaeec35068a6ec3)\n","title":"core: keep empty groups from keyfile configs","timestamp":"2025-09-12T13:20:14+02:00","url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/2de3de0c28f93b2724686b65cae1cd7fce90e351","author":{"name":"Íñigo Huguet","email":"ihuguet@riseup.net"},"added":["src/core/tests/config/global-dns-empty.conf","src/core/tests/config/global-dns-not-set.conf"],"modified":["src/core/nm-config.c","src/core/tests/config/test-config.c"],"removed":[]},{"id":"44e406c1de84e2eeaf1089060a3a985297a78f9a","message":"merge: branch 'ih/dbus-global-dns'\n\ncore: dns: fix the behavior of [global-dns]\n\nhttps://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2261\n\n(cherry picked from commit f472111e585d61d1c21141a7a1fd85ec6a455725)\n","title":"merge: branch 'ih/dbus-global-dns'","timestamp":"2025-09-12T13:20:15+02:00","url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/44e406c1de84e2eeaf1089060a3a985297a78f9a","author":{"name":"Íñigo Huguet","email":"ihuguet@riseup.net"},"added":["src/core/tests/config/global-dns-empty.conf","src/core/tests/config/global-dns-not-set.conf"],"modified":["man/NetworkManager.conf.xml","src/core/dns/nm-dns-manager.c","src/core/nm-config-data.c","src/core/nm-config-data.h","src/core/nm-config.c","src/core/nm-l3-config-data.c","src/core/nm-l3-config-data.h","src/core/tests/config/test-config.c"],"removed":[]},{"id":"dff8f43adf918c68de796da23ce80e4c9f8ab4be","message":"initrd: support setting the DHCP client-id\n\nIn some cases it is necessary to set a custom DHCP client-id during\nearly boot. For example, the firmware of some InfiniBand NIC uses a\n48-bit MAC derived from the InfiniBand 20-byte MAC when doing\nPXE. NetworkManager doesn't have any knowledge of that 48-bit MAC and\nuses the full MAC as client-id, therefore getting a different lease.\n\nIntroduce a new option 'rd.net.dhcp.client-id' to specify a custom\nclient-id.\n\nResolves: https://issues.redhat.com/browse/RHEL-108454\n\nhttps://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2277\n(cherry picked from commit 40aa27690c10f34a8a712f763af611415f2f0457)\n","title":"initrd: support setting the DHCP client-id","timestamp":"2025-09-12T13:20:45+02:00","url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/dff8f43adf918c68de796da23ce80e4c9f8ab4be","author":{"name":"Beniamino Galvani","email":"bgalvani@redhat.com"},"added":[],"modified":["man/nm-initrd-generator.xml","src/nm-initrd-generator/nmi-cmdline-reader.c","src/nm-initrd-generator/tests/test-cmdline-reader.c"],"removed":[]},{"id":"0c4647d5071903ab5291a0db19a008321e8973e1","message":"wifi: don't recheck auto-activate on disposal\n\nDuring disposal we're calling to remove_all_aps that in turns schedules\nan auto-activate recheck. As the device is removed, this triggers an\nassertion when trying to do the recheck.\n\nFix that by not scheduling the recheck.\n\nExample of backtrace that this commits fix:\n 0 __libc_do_syscall () at ../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:47\n 1 0xf746e270 in __pthread_kill_implementation (threadid=, signo=6, no_tid=) at pthread_kill.c:43\n 2 0xf743fbc6 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26\n 3 0xf7431614 in __GI_abort () at abort.c:79\n 4 0xf775afea in g_assertion_message (domain=domain@entry=0x209a9f \"nm\", file=file@entry=0x1f7d59 \"../NetworkManager-1.43.7/src/core/nm-policy.c\", line=line@entry=1665,\n func=func@entry=0x1f94d9 <__func__.6> \"nm_policy_device_recheck_auto_activate_schedule\",\n message=message@entry=0x1d3e950 \"assertion failed: (g_signal_handler_find(device, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, NM_POLICY_GET_PRIVATE(self)) != 0)\")\n at ../glib-2.72.3/glib/gtestutils.c:3253\n 5 0xf775b05e in g_assertion_message_expr (domain=0x209a9f \"nm\", file=0x1f7d59 \"../NetworkManager-1.43.7/src/core/nm-policy.c\", line=1665,\n func=0x1f94d9 <__func__.6> \"nm_policy_device_recheck_auto_activate_schedule\",\n expr=0x1f8afc \"g_signal_handler_find(device, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, NM_POLICY_GET_PRIVATE(self)) != 0\") at ../glib-2.72.3/glib/gtestutils.c:3279\n 6 0x0005f27a in nm_policy_device_recheck_auto_activate_schedule (self=0x1d3e950, device=0x209a9f) at ../NetworkManager-1.43.7/src/core/nm-policy.c:1679\n 7 0x000548ae in nm_manager_device_recheck_auto_activate_schedule (self=, device=) at ../NetworkManager-1.43.7/src/core/nm-manager.c:3113\n 8 0x00070622 in nm_device_recheck_auto_activate_schedule (self=) at ../NetworkManager-1.43.7/src/core/devices/nm-device.c:9249\n 9 0xf693aa8c in ap_add_remove (self=self@entry=0x1ceb0b0, is_adding=0, ap=, recheck_available_connections=0)\n at ../NetworkManager-1.43.7/src/core/devices/wifi/nm-device-wifi.c:846\n 10 0xf693bcda in remove_all_aps (self=self@entry=0x1ceb0b0) at ../NetworkManager-1.43.7/src/core/devices/wifi/nm-device-wifi.c:863\n 11 0xf693f83c in dispose (object=0x1ceb0b0) at ../NetworkManager-1.43.7/src/core/devices/wifi/nm-device-wifi.c:3809\n 12 0xf7806e72 in g_object_unref (_object=) at ../glib-2.72.3/gobject/gobject.c:3636\n 13 g_object_unref (_object=0x1ceb0b0) at ../glib-2.72.3/gobject/gobject.c:3553\n 14 0x000f7fa4 in _nm_dbus_object_clear_and_unexport (location=location@entry=0xffa50644) at ../NetworkManager-1.43.7/src/core/nm-dbus-object.c:203\n 15 0x000576e4 in remove_device (self=self@entry=0x1c9c900, device=, quitting=quitting@entry=1) at ../NetworkManager-1.43.7/src/core/nm-manager.c:2289\n 16 0x0005a864 in nm_manager_stop (self=self@entry=0x1c9c900) at ../NetworkManager-1.43.7/src/core/nm-manager.c:7784\n 17 0x00023438 in main (argc=, argv=) at ../NetworkManager-1.43.7/src/core/main.c:530\n\nFixes: 96f40dcdcd8b ('wifi/ap: explicitly unexport AP and refactor add/remove AP')\nFixes: https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/1791\n(cherry picked from commit 390413515007a59ad516b987ba9e9f157082ed05)\n","title":"wifi: don't recheck auto-activate on disposal","timestamp":"2025-09-12T13:21:45+02:00","url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/0c4647d5071903ab5291a0db19a008321e8973e1","author":{"name":"Íñigo Huguet","email":"ihuguet@riseup.net"},"added":[],"modified":["src/core/devices/wifi/nm-device-wifi.c"],"removed":[]},{"id":"824ebf8c2ea5bfbefdc1e0b4da363a41215f7bb3","message":"libnm-core: honor secrets flags when serializing WireGuard peers to D-Bus\n\nIf \"flags\" indicate that only secrets should be serialized and a peer\ndoesn't contain any secrets, skip it. Otherwise the function would\nreturn a non-empty result when the connection contains no secret,\nwhich causes issues later in the agent manager.\n\nFixes: e148ec07d5d3 ('libnm: add NMWireGuardPeer and libnm support for peers')\n\nhttps://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2244\n(cherry picked from commit 86c7f1ed14be8a1994cb93d6353e530d52803787)\n","title":"libnm-core: honor secrets flags when serializing WireGuard peers to D-Bus","timestamp":"2025-09-12T13:21:46+02:00","url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/824ebf8c2ea5bfbefdc1e0b4da363a41215f7bb3","author":{"name":"Beniamino Galvani","email":"bgalvani@redhat.com"},"added":[],"modified":["src/libnm-core-impl/nm-setting-wireguard.c","src/libnm-core-impl/tests/test-setting.c"],"removed":[]}],"total_commits_count":11,"push_options":{},"repository":{"name":"NetworkManager","url":"git@ssh.gitlab.freedesktop.org:NetworkManager/NetworkManager.git","description":"NetworkManager — network management daemon","homepage":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager","git_http_url":"https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git","git_ssh_url":"git@ssh.gitlab.freedesktop.org:NetworkManager/NetworkManager.git","visibility_level":20}}