summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2023-08-10contrib/rpm: enable ifcfg migration on Fedora 39+bg/rpm-migrate-ifcfgBeniamino Galvani1-0/+12
https://fedoraproject.org/wiki/Changes/MigrateIfcfgToKeyfile
2023-08-09release: bump version to 1.45.1 (development)1.45.1-devBeniamino Galvani38-453/+757
2023-08-09release: bump version to 1.44.01.44.0Beniamino Galvani2-3/+3
2023-08-09NEWS: updateFernando Fernandez Mancera1-5/+0
(cherry picked from commit a1f48355de4893aa030593f2126aaf5e74ddfb57)
2023-08-09NEWS: updateFernando Fernandez Mancera1-5/+0
2023-08-09NEWS: updateFernando Fernandez Mancera1-0/+1
(cherry picked from commit 52999c0709b12a3604354695fb7ef6752493e3a3)
2023-08-09NEWS: updateFernando Fernandez Mancera1-0/+1
2023-08-09nmcli: warn if daemon version mismatchÍñigo Huguet7-5/+81
When updating NetworkManager to a new version, normally the service is not restarted by the installer to avoid interrupting networking. However, next nmcli invocation will use the updated version, but against the older version of the daemon that is still running. Although this is suposed to work, it is advisable that nmcli and daemon's versions are the same. Emit a warning recommending restarting the daemon. Add nmcli test to check the new feature. To avoid breaking the existing tests, test-networkmanager-service now reports the same version than the running nmcli except if it's instructed to report a different one. https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1703 (cherry picked from commit fb851f3294fbf8ab1243dc6fcceef5adf0a403bd)
2023-08-09merge: branch 'bg/checkpoint-deleted-device'Beniamino Galvani1-8/+27
https://bugzilla.redhat.com/show_bug.cgi?id=2177590 https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1708 (cherry picked from commit b3a9999894db3556353a8126f62f57bc92400425)
2023-08-09checkpoint: fetch new device on rollbackBeniamino Galvani1-8/+10
When a device belonging to a checkpoint is removed, we clear the device pointer from the DeviceCheckpoint and move the object from the devices list to the removed-devices list of the checkpoint. Later, when restoring the connection we need to set again the device pointer in DeviceCheckpoint; otherwise, any connection on that device can't be reactivated if changed. Fixes: 0e2f7ac7b5ea ('nm-checkpoint: drop reference to NM_DEVICE objects on removal signal') (cherry picked from commit b80a398306b3f30b3563df43141215e6645e652d)
2023-08-09checkpoint: preserve devices that were removed and readdedBeniamino Galvani1-0/+17
With flag DISCONNECT_NEW_DEVICES, on rollback we delete devices that are present in the system and are not in the checkpoint. The problem is that we remove the device from `NMCheckpointPriv->devices` when it is deleted and so we lose the information that the device was in the checkpoint. We need to also look in the `removed_devices` list. Fixes: 0e2f7ac7b5ea ('nm-checkpoint: drop reference to NM_DEVICE objects on removal signal') (cherry picked from commit 0fcfd6e24f471170cf44d8ace0202e1e2fc9ffbb)
2023-08-09merge: branch 'bg/checkpoint-deleted-device'Beniamino Galvani1-8/+27
https://bugzilla.redhat.com/show_bug.cgi?id=2177590 https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1708
2023-08-09checkpoint: fetch new device on rollbackbg/checkpoint-deleted-deviceBeniamino Galvani1-8/+10
When a device belonging to a checkpoint is removed, we clear the device pointer from the DeviceCheckpoint and move the object from the devices list to the removed-devices list of the checkpoint. Later, when restoring the connection we need to set again the device pointer in DeviceCheckpoint; otherwise, any connection on that device can't be reactivated if changed. Fixes: 0e2f7ac7b5ea ('nm-checkpoint: drop reference to NM_DEVICE objects on removal signal')
2023-08-09checkpoint: preserve devices that were removed and readdedBeniamino Galvani1-0/+17
With flag DISCONNECT_NEW_DEVICES, on rollback we delete devices that are present in the system and are not in the checkpoint. The problem is that we remove the device from `NMCheckpointPriv->devices` when it is deleted and so we lose the information that the device was in the checkpoint. We need to also look in the `removed_devices` list. Fixes: 0e2f7ac7b5ea ('nm-checkpoint: drop reference to NM_DEVICE objects on removal signal')
2023-08-07merge branch 'th/signedness-check-minmax'Thomas Haller13-33/+57
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1702
2023-08-07std-aux: add static-asserts about signedness for NM_CMP_DIRECT()Thomas Haller1-7/+9
2023-08-07std-aux: add static-asserts about signedness of NM_MIN()/NM_MAX()/NM_CLAMP()Thomas Haller1-9/+18
The macros NM_MIN()/NM_MAX()/NM_CLAMP() use typeof() to accept any integer type as argument. Internally, they rely on standard C integral conversions of the <> operators and the ternary operator for evaluating the comparison and the result(type). That works mostly great. Except, comparing signed and unsigned values in C leads to oddities and the caller should explicitly take care of that. Add static assertions to check that the compared arguments have the same signedness.
2023-08-07std-aux: add _NM_INT_IS_SIGNED() and _NM_INT_SAME_SIGNEDNESS() macrosThomas Haller2-0/+13
2023-08-07all: ensure signendess for arguments of NM_{MIN,MAX,CLAMP}() macros matchesThomas Haller11-17/+17
2023-08-03nmcli: warn if daemon version mismatchÍñigo Huguet7-5/+81
When updating NetworkManager to a new version, normally the service is not restarted by the installer to avoid interrupting networking. However, next nmcli invocation will use the updated version, but against the older version of the daemon that is still running. Although this is suposed to work, it is advisable that nmcli and daemon's versions are the same. Emit a warning recommending restarting the daemon. Add nmcli test to check the new feature. To avoid breaking the existing tests, test-networkmanager-service now reports the same version than the running nmcli except if it's instructed to report a different one. https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1703
2023-08-02wifi: merge branch 'ff/wifi_bandwidth'Fernando Fernandez Mancera16-399/+677
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1704
2023-08-02nmcli: show bandwidth on wifi device outputff/wifi_bandwidthFernando Fernandez Mancera4-397/+466
Example output: ``` NAME: AP[3] SSID: testX SSID-HEX: 4D4F5649535441525F504C55535F32453037 BSSID: 80:78:71:90:2E:15 MODE: Infra CHAN: 104 FREQ: 5520 MHz RATE: 540 Mbit/s BANDWIDTH: 40 MHz SIGNAL: 32 BARS: ▂▄__ SECURITY: WPA2 WPA-FLAGS: (none) RSN-FLAGS: pair_ccmp group_ccmp psk DEVICE: wlp0s20f3 ACTIVE: yes IN-USE: * DBUS-PATH: /org/freedesktop/NetworkManager/AccessPoint/3 ```
2023-08-02wifi: parse access point announced bandwidthFernando Fernandez Mancera10-2/+196
Parse the access point announced bandwidth in MHz. This is considering both HT and VHT. Please notice that for VHT 80+80 MHz we are representing it as 160 MHz.
2023-08-01version: add version 1.46 macrosFernando Fernandez Mancera2-0/+15
2023-08-01man: adjust references of nm-settings to nm-settings-nmcliFernando Fernandez Mancera6-15/+15
nm-settings was renamed to nm-settings-nmcli therefore we should rename all the references to nm-settings-nmcli.
2023-07-31nmcli: avoid freeing NULL GString and correct error messageFrederic Martinsons1-3/+5
Fixes #1362 Signed-off-by: Frederic Martinsons <frederic.martinsons@gmail.com>
2023-07-29gitignore: ignore VSCode project and clangd cache foldersÍñigo Huguet1-0/+2
(cherry picked from commit cea9d4634f8235c76accd1416be094e173b61374)
2023-07-29man: fix typo in "NetworkManager.conf" manualThomas Haller1-1/+1
(cherry picked from commit ad6064e4e86dd41bb426a206818095d700d234ca)
2023-07-29man: clarify relation of "dns.systemd-resolved" setting with "dns"Thomas Haller1-8/+7
(cherry picked from commit bba0d553b1954bca9bfa491a8133c452d3cad14f)
2023-07-28gitignore: ignore VSCode project and clangd cache foldersÍñigo Huguet1-0/+2
2023-07-27man: fix typo in "NetworkManager.conf" manualThomas Haller1-1/+1
2023-07-27man: clarify relation of "dns.systemd-resolved" setting with "dns"Thomas Haller1-8/+7
2023-07-26release: bump version to 1.45.0 (development)1.45.0-devBeniamino Galvani2-3/+3
2023-07-26release: bump version to 1.43.90 (1.44-rc1)1.44-rc1Beniamino Galvani2-2/+2
2023-07-26NEWS: updateBeniamino Galvani1-2/+51
2023-07-26device: delete software device when lose carrier and is controllerFernando Fernandez Mancera1-1/+5
Software devices that are controllers like bond/bridge/team when configured to not ignore carrier are being deleted when deactivating the device. Software devices that are not controllers, shouldn't be deleted. Otherwise, if a VLAN link is deleted because the ethernet carrier-change then NetworkManager won't be able to reactivate the VLAN once the ethernet gets carrier because the link is not present. This is restoring the previous behaviour and it's know to be relied on by users. https://bugzilla.redhat.com/show_bug.cgi?id=2224479 https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1701 Fixes: efa63aef3aeb ('device: delete software device when software devices lose carrier')
2023-07-25settings: merge branch 'bg/ifcfg-migrate-option'Fernando Fernandez Mancera13-16/+108
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1700
2023-07-25settings: implement ifcfg-rh migration optionbg/ifcfg-migrate-optionBeniamino Galvani1-5/+33
Implement the migration of ifcfg-rh profiles when the "main.migrate-ifcfg-rh" option is enabled.
2023-07-25settings: move warning about ifcfg-rhBeniamino Galvani2-16/+29
Move the warning about the presence of ifcfg-rh profiles from the plugin to NMSettings. In this way, it will be easier to implement the migration option in the next commit.
2023-07-25build,core: add a "main.migrate-ifcfg-rh" configuration optionBeniamino Galvani11-0/+51
The option enables automatic migration of ifcfg-rh connection profiles to keyfile. The default value can be configured at build time.
2023-07-25nmtui: merge branch 'jv/nmtui-inclusive'Fernando Fernandez Mancera83-492/+493
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1698
2023-07-25nmtui: replace occurrences of master/slave with controller/port in internal codeJan Vaclav83-492/+493
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/1335 https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1698
2023-07-25nmcli: merge branch 'jv/nmcli-inclusive'Fernando Fernandez Mancera5-189/+186
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1697
2023-07-25nmcli: replace occurrences of master/slave with controller/port in internal codeJan Vaclav5-189/+186
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/1334 https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1697
2023-07-24assume: change IPv6 method from "ignore" and "disabled" into "auto"Wen Liang1-0/+7
IPv6 method "disabled" and "ignore" are not supported for loopback device, when generating the assume connection, the generated connection will fail verification. Therefore, change the IPv6 method into "auto", as a result, for loopback external connection, NM will not toggle the `disable_ipv6` sysctl setting when `systemd-sysctl` sets it into 1. https://bugzilla.redhat.com/show_bug.cgi?id=2207878 https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1694
2023-07-24initrd: unset dhcp options for static profilesJan Vaclav2-6/+109
Makes it so that DHCP properties (`dhcp-timeout`, `dhcp-hostname`) are unset when they are deemed unnecessary. Unit tests have also been updated to account for this change. https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/1276 https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1695
2023-07-19Update file ka.poNorwayFun1-1594/+1787
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1687
2023-07-19manager: allow controller activation if device is deactivatingFernando Fernandez Mancera1-1/+3
When activating a port connection it will require the controller connection is active or a valid controller device candidate is available for activation. One of the conditions we consider for a controller device to be a valid candidate for the connection is that it is not active, therefore we should also consider as valid a device that is currently deactivating. Otherwise, we could fail during the port activation just because the deactivation of the controller device candidate didn't finish yet. https://bugzilla.redhat.com/show_bug.cgi?id=2125615 https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1693
2023-07-19glib-aux: merge branch 'th/fix-ifname-valid-kernel'Fernando Fernandez Mancera3-16/+77
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1692
2023-07-19glib-aux: fix rejecting '\v' and NBSP in nm_utils_ifname_valid_kernel()Thomas Haller1-1/+1
Kernel's dev_valid_name() calls isspace(), which also rejects '\v' and '\240'. As this tightens the check, the change can break code that partly worked before. It surely didn't work to the point, where an interface with such name could be created in kernel. # ip link add name $'foo\240bar' type dummy RTNETLINK answers: Invalid argument