Commit Graph

33549 Commits

Author SHA1 Message Date
Gris Ge
3cb9991fc8 merge: branch 'fix_sriov'
sriov: only valid sriov capacity when enabled

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2051
2024-10-22 02:16:20 +00:00
Gris Ge
421ccf8b4c sriov: only valid sriov capacity when enabled
NetworkManager current code will refuse to activate a connection if its
interface has no SRIOV capacity but holding a empty SRIOV settings.

This patch only valid SRIOV capacity when it is enabled(total_vfs > 0).

Resolves: https://issues.redhat.com/browse/RHEL-58397

Signed-off-by: Gris Ge <fge@redhat.com>
2024-10-21 21:14:11 +08:00
Fernando Fernandez Mancera
c691dd7ecf bonding: steer IGMP queries to the active bond balance-slb primary port
Add chains and rules to steer the IGMP reports to the primary member
port. This rules are adapted from the script provided by Eric Garver.

https://gitlab.com/egarver/virtual-networking/-/blob/master/mlag.sh

Fixes: e9268e3924 ('firewall: add mlag firewall utils for multi chassis link aggregation (MLAG) for bonding-slb')
2024-10-18 11:50:04 +02:00
Íñigo Huguet
88b160cbcc merge: branch 'initial-eps-bearer-settings'
-Added additional initial eps bearer settings

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1915
2024-10-17 06:01:41 +00:00
Íñigo Huguet
c0ac672336 NEWS: update with LTE's EPS bearer changes 2024-10-17 07:56:04 +02:00
Josef Ouano
a47d44cffd wwan: added additional initial eps bearer settings
Added the following settings for initial EPS bearer:
- Username
- Password
- Allowed Auth
- APN Type Setting
2024-10-17 07:53:49 +02:00
Íñigo Huguet
00971b599b merge: branch 'feature/configurable-nmcli-history-file'
nmcli: Move history file to `$XDG_CACHE_HOME`

Closes #1615

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2027
2024-10-14 11:38:39 +00:00
Andreas Hartmann
107730a6a4 NEWS: mention relocation of .nmcli-history. 2024-10-14 11:38:04 +00:00
Andreas Hartmann
66e21700ea nmcli: Move .nmcli-history
from its previous location unter the users `$HOME` directory to
`$XDG_CACHE_HOME/nmcli-history`. This makes `nmcli` compliant with the
[XDG Base Directory Specification][1].

[1]: https://specifications.freedesktop.org/basedir-spec/latest/
2024-10-14 11:38:04 +00:00
Íñigo Huguet
a2abc85504 merge: branch 'nmcli-ask-c-u'
make `nmcli --ask c u` behave as intended

Closes #1618

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2042
2024-10-14 11:24:07 +00:00
Amelia Miner
b9d8f6c4da make nmcli --ask c u behave as intended 2024-10-14 11:24:07 +00:00
Íñigo Huguet
92a2f31531 merge: branch 'ih/ipcalc'
contrib/rpm: Add ipcalc dependency to dispatcher-routing-roules

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2052
2024-10-11 13:55:38 +00:00
Íñigo Huguet
5792038572 contrib/rpm: Add ipcalc dependency to dispatcher-routing-roules
The dispatcher script uses it.
2024-10-11 12:14:50 +02:00
Lubomir Rintel
f5a723ae50 test: check validity of systemd service files
This spots errors like what commit a531458456 ('cloud-setup: fix
placement of directives in the systemd unit') fixes.

This is what a failure would look like:

   5/74 check-nm-cloud-setup.service     FAIL     0.05s   exit status 1
  >>> ...  /bin/bash src/tests/check-systemd-service.sh
      build/src/nm-cloud-setup/nm-cloud-setup.service
  ―――――――――――――――――――――― ✀  ―――――――――――――――――――――――
  build/src/nm-cloud-setup/nm-cloud-setup.service:19:
      Unknown key 'StartLimitIntervalSec' in section [Service], ignoring.

https://issues.redhat.com/browse/RHEL-56860
https://issues.redhat.com/browse/RHEL-49694
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/pipelines/1284415
2024-10-10 01:49:33 +02:00
Íñigo Huguet
c7e0668c27 merge: branch 'ff/fix_unit_test'
fedora: install ethtool explicitly

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2049
2024-10-08 07:31:36 +00:00
Fernando Fernandez Mancera
5f54ced2ee fedora: install ethtool explicitly
Some container images do not have ethtool installed by default and it is
needed for a test-core unit test to run.
2024-10-07 14:09:42 +02:00
Lubomir Rintel
f306d6a2ce merge: branch 'lr/editor-load'
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2037
2024-10-05 23:08:13 +02:00
Lubomir Rintel
ecf1e8716c libnm/vpn-editor-plugin: add a comment on a design blunder
VPN plugin factory can never fail, it always returns an object, much
like g_object_new(). If the (GUI) editor is unavailable, it might be
okay for some use cases, notably import()/export(). In such case, the
absence of GUI editor is indicated via capability flags.
2024-10-05 23:06:58 +02:00
Lubomir Rintel
a1a9a6509e libnm/vpn-editor-plugin: add a flag to indicate lack of GUI editor 2024-10-05 23:06:58 +02:00
Lubomir Rintel
c09edb8293 libnm/vpn-editor-plugin: formatting fixes
Fix up a slightly unpleasant comment and docstring formatting.
2024-10-05 23:06:58 +02:00
Lubomir Rintel
1f091945da contrib/nm-vpn-plugin-utils: split editor plugin lookup and load
nm-connection-editor (and presumably the Control Center) expects the
nm_vpn_editor_plugin_factory() to fail if the editor plugin (the thing
that goes into the *-gnome subpackage in Fedora) is not installed.

However, factory() never fails, because the plugin is checked for
existence only when get_editor() is called.
2024-10-05 23:06:58 +02:00
Lubomir Rintel
6747b1c0b8 libnm/vpn-service-plugin: flush D-Bus connection before signalling quit
The plugins tend to exit right away after receiving the "quit" signal,
which may come before the ConnectInteractive() response went out.
This may make NM miss the response, and the error details it contains.

Let's make sure we flush the pending traffic out.

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2045
2024-10-05 23:03:13 +02:00
Beniamino Galvani
bb6881f88c format: run nm-code-format
Reformat with:

  clang-format version 19.1.0 (Fedora 19.1.0-1.fc41)

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2046
2024-10-04 11:07:35 +02:00
Fernando Fernandez Mancera
09e822edba release: bump version to 1.51.2 (development) 2024-09-28 22:04:20 +02:00
Beniamino Galvani
a8329587c8 device: fix bug when deactivating port connections asynchronously
When the attach_port()/detach_port() methods do not return immediately
(currently, only for OVS ports), the following situation can arise:

 - nm_device_controller_attach_port() starts the attachment by sending
   the command to ovsdb. Note that here we don't set
   `PortInfo->port_is_attached` to TRUE yet; that happens only after
   the asynchronous command returns;

 - the activation of the port gets interrupted because the connection
   is deleted;

 - the port device enters the deactivating state, triggering function
   port_state_changed()

 - the function calls nm_device_controller_release_port() which checks
   whether the port is already attached; since
   `PortInfo->port_is_attached` is not set yet, it assumes the port
   doesn't need to be detached;

 - in the meantime, the ovsdb operation succeeds. As a consequence,
   the kernel link is created even if the connection no longer exists.

Fix this by turning `port_is_attached` into a tri-state variable that
also tracks when the port is attaching. When it is, we need to perform
an explicit detach during deactivation.

Fixes: 9fcbc6b37d ('device: make attach_port() asynchronous')

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2043

Resolves: https://issues.redhat.com/browse/RHEL-58026
2024-09-26 15:02:59 +02:00
Íñigo Huguet
0567cfe367 triage: fix typo atention -> attention 2024-09-26 11:04:51 +02:00
Íñigo Huguet
bd177f6d45 merge: branch 'ih/ensure-ci-external-contributor'
triage: ensure that CI is run for MRs from community

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2041
2024-09-26 08:40:21 +00:00
Íñigo Huguet
2c03770649 triage: add link to gitlab-triage docs 2024-09-26 08:40:02 +00:00
Íñigo Huguet
ca59877016 triage: ensure that CI is run for MRs from community
Use a blocking thread to remember the maintainers to run the CI. The
idea is that the maintainers have to run it manually and resolve the
thread.

Due to a limitation in gitlab-triage it has to be done in a weird way:
it is possible to check if the author is member of the project and it is
possible to check if he/she is member of the parent group, but it is not
possible to check if it's member of either one in a single rule. Because
of this a simple rule "author is not member" cannot be created.

To workaround this we create 2 rules to detect if the author IS a member
of the project or the group. If he/she is, we add a label to indicate
it. Then, a 3rd rule checks if this label is missing, and if it's
missing, it means that he/she is not a member.

This issue has been reported to gitlab-triage but it doesn't seem to be
in active maintenaince: https://gitlab.com/gitlab-org/ruby/gems/gitlab-triage/-/issues/362
2024-09-26 08:40:02 +00:00
Beniamino Galvani
fda05b0af0 libnm-core: fix validation of ovs-dpdk interface name
An ovs-dpdk interface doesn't have a kernel link and doesn't have the
15-character limit on the name.

Fixes: 3efe070dfc ('libnm: validate "connection.interface-name" at one place only')

Resolves: https://issues.redhat.com/browse/RHEL-60233

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2044
2024-09-26 09:42:34 +02:00
Fernando Fernandez Mancera
d7d775db82 merge: branch 'ff/fix_ipvlan_setting'
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2039
2024-09-24 08:52:59 +02:00
Fernando Fernandez Mancera
5e36063893 test-libnm: add comment explaining one assertion 2024-09-23 17:13:23 +02:00
Fernando Fernandez Mancera
1e70f24378 hsr: fix initialization of port1 and port2 DBus Object property
This was causing test_nml_dbus_meta() unit test to fail and also it was
affecting the notification when the object changed.

Fixes: 5426bdf4a1 ('HSR: add support to HSR/PRP interface')
2024-09-23 17:02:34 +02:00
Fernando Fernandez Mancera
6a898fc0a2 ipvlan: fix libnm unit test for ipvlan setting and dbus
Fixes: d238ff487b ('ipvlan: add support to IPVLAN interface')
2024-09-23 16:05:22 +02:00
Fernando Fernandez Mancera
3b95b39582 merge: branch 'ff/ipvlan_support'
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2032
2024-09-18 13:42:00 +02:00
Fernando Fernandez Mancera
8f5c18665a NEWS: add support of ipvlan 2024-09-18 13:19:47 +02:00
Fernando Fernandez Mancera
d238ff487b ipvlan: add support to IPVLAN interface
This patch add support to IPVLAN interface. IPVLAN is a driver for a
virtual network device that can be used in container environment to
access the host network. IPVLAN exposes a single MAC address to the
external network regardless the number of IPVLAN device created inside
the host network. This means that a user can have multiple IPVLAN
devices in multiple containers and the corresponding switch reads a
single MAC address. IPVLAN driver is useful when the local switch
imposes constraints on the total number of MAC addresses that it can
manage.
2024-09-18 13:19:42 +02:00
Fernando Fernandez Mancera
b3bdebbad3 libnm-core: add 1.52 macros 2024-09-18 12:04:39 +02:00
Fernando Fernandez Mancera
7e42486010 merge: branch 'ff/hsr_fixes'
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2038
2024-09-17 17:41:47 +02:00
Fernando Fernandez Mancera
a0696e27b8 hsr: add hsr setting to docs generate script
The setting was missing from the script. The patch is adding it and also
regenerates the docs.

Fixes: 5426bdf4a1 ('HSR: add support to HSR/PRP interface')
2024-09-16 17:04:02 +02:00
Fernando Fernandez Mancera
5e4696a693 hsr: use HSR DBus metadata properly
The HSR DBus metadata was defined properly but not exported on the libnm
library properly. This was causing that clients were not showing the HSR
devices.

Fixes: 5426bdf4a1 ('HSR: add support to HSR/PRP interface')
2024-09-16 17:04:02 +02:00
Fernando Fernandez Mancera
4ff3bd3eb5 introspection: fix indentation for HSR device introspection
The file was mixing spaces and tabs. It should only use spaces.

Fixes: 5426bdf4a1 ('HSR: add support to HSR/PRP interface')
2024-09-16 17:04:02 +02:00
Fernando Fernandez Mancera
cfe5432de8 release: bump version to 1.51.1 (development) 2024-09-16 12:30:37 +02:00
Fernando Fernandez Mancera
180f6e3739 release: fix version parsing from meson
Fixes: 6707ce0754 ('build: use meson for version info')
2024-09-16 12:21:00 +02:00
Beniamino Galvani
65c4f5e0de merge: branch 'dhcp_lease'
Copy DHCP lease from src, fixing nm_l3_config_data_new_clone assertion

Closes #1620

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2035
2024-09-12 08:48:15 +00:00
Martin von Gagern
a25d593922 core: fix dhcp leases in l3cd cloning.
This will copy DHCP lease from src (not self), fixing an assertion in
nm_l3_config_data_new_clone.

Resolves: https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/1620
Fixes: 55b722820d ('l3cfg: fix nm_l3_config_data_new_clone() to make exact copy')
2024-09-11 15:57:11 +01:00
Íñigo Huguet
70868fb469 merge: branch 'bg/nmcs-unit-burst'
cloud-setup: fix placement of directives in the systemd unit

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2030
2024-09-11 13:49:40 +00:00
Beniamino Galvani
a531458456 cloud-setup: fix placement of directives in the systemd unit
The "StartLimitIntervalSec" and "StartLimitBurst" directives should be
in the [Unit] section instead of the [Service] one.

Fixes: 927cff9f17 ('cloud-setup: allow bigger restart bursts')
2024-09-11 13:49:21 +00:00
Jan Vaclav
2896c5a38b merge: branch 'jv/drop-autotools'
all: drop autotools build system

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/2020
2024-09-11 12:18:40 +00:00
Jan Vaclav
7766368278 NEWS: mention removal of autotools 2024-09-11 12:18:15 +00:00