Beniamino Galvani
b185d21c95
l3cfg: fix handling of ipv6 hop limit
...
Fixes: 5c48c5d5d6
('l3cfg: set IPv6 sysctls during NML3Cfg commit')
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/1497
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1883
2024-03-12 09:58:28 +01:00
Wen Liang
db5b92fa03
libnm: use nm_setting_connection_get_controller()
where possible
...
To enforce conscious language support, use
`nm_setting_connection_get_controller()` where possible and replace
`nm_setting_connection_get_master()`.
https://issues.redhat.com/browse/RHEL-28623
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1882
2024-03-12 09:54:31 +01:00
Fernando Fernandez Mancera
3cb9065305
Revert "build: workaround -Wno-calloc-transposed-args warning in systemd code"
...
Upstream systemd code was re-imported and therefore the issue is now
solved. Enable the warning again.
This reverts commit b1016e3be8
.
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1886
2024-03-12 09:47:06 +01:00
Fernando Fernandez Mancera
534e199484
merge: branch 'jv/deprecate-mac-blacklist'
...
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1741
2024-03-11 11:43:18 +01:00
Jan Vaclav
f9397a5740
test/client: set 802-11-wireless.mac-address-denylist
2024-03-11 11:42:19 +01:00
Jan Vaclav
5672757ac4
test/networkmanager-service: simulate behavior of aliased/deprecated properties
...
Previously, the mock server did not behave as expected when given an aliased property
and the test results were not matching that of actual NM daemon behavior.
2024-03-11 11:42:19 +01:00
Jan Vaclav
fda0f8435d
all: use the new NMSettingWireless mac-address-denylist property
2024-03-11 11:42:19 +01:00
Jan Vaclav
fa215c6a69
wireless: deprecate NMSettingWireless mac-address-blacklist property
...
To embrace inclusive language, deprecate the NMSettingWireless
mac-address-blacklist property and introduce mac-address-denylist property.
2024-03-11 11:42:19 +01:00
Jan Vaclav
ec91aa3c70
libnm: add property_type argument to _nm_setting_property_define_direct_strv
...
The purpose of this is to allow overriding to_dbus_fcn and from_dbus_fcn when
necessary (such as for special behavior regarding a deprecated/aliased properties).
2024-03-11 11:42:19 +01:00
Jan Vaclav
8f9ed29e2c
libnm: allow _nm_setting_property_define_direct_strv() to be used as expression
...
This is so that the resulting index can be used for aliasing properties.
2024-03-11 11:42:19 +01:00
Jan Vaclav
1bb73bd552
libnm: add _NM_DEPRECATED_INCLUSIVE_LANGUAGE_1_48
2024-03-11 11:42:19 +01:00
Íñigo Huguet
f3f2f49580
release: bump version to 1.47.2 (development)
2024-03-08 10:31:14 +01:00
Fernando Fernandez Mancera
a1492cc53d
merge: branch 'ff/dhcp_release'
...
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1852
2024-03-06 11:17:54 +01:00
Fernando Fernandez Mancera
ac4e63ddda
ip: support dhcp-send-release in NMSettingIpConfig
...
Introduce a new option to NMSettingIpConfig. The new option is ternary
type being the default value set to disabled. When enabled,
NetworkManager will instruct the DHCP client to send RELEASE message
when IP addresses are being removed.
2024-03-06 11:14:16 +01:00
Fernando Fernandez Mancera
243cc433fb
n-dhcp4: add new client probe function to send RELEASE message
...
The new function uses the client probe connection to send a RELEASE
message. Returns zero if successful otherwise returns non-zero value.
2024-03-06 11:14:16 +01:00
Fernando Fernandez Mancera
0f0f1bbf8a
n-dhcp4: set xid value of the DHCP header for RELEASE and DECLINE message
...
The `xid` of the DHCP header must be initialized for RELEASE and DECLINE
messages [1].
[1] https://datatracker.ietf.org/doc/html/rfc2131#section-4.4.1
2024-03-06 11:14:16 +01:00
Fernando Fernandez Mancera
3be44c0aa8
device: rename _dev_ipdhcpx_cleanup() "release" argument
...
The argument might imply that when set to FALSE, the dhcp client won't
send a RELEASE message. This won't be true with the new
dhcp-send-release option that is going to be introduced.
Instead, change the name to "force_release", when set to TRUE it means
we are sending a RELEASE message even if not indicated by the user. When
set to FALSE, it will be up to the user.
2024-03-06 11:14:16 +01:00
Fernando Fernandez Mancera
32b20fbc8c
merge: branch 'ff/fix_systemd'
...
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1877
2024-03-06 11:03:38 +01:00
Fernando Fernandez Mancera
d3086e8c79
merge: branch 'ff/down_on_shutdown'
...
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1858
2024-03-05 11:42:21 +01:00
Fernando Fernandez Mancera
bd38a19832
connection: add support to down-on-poweroff
...
The new option at NMSettingConnection allow the user to specify if the
connection needs to be down when powering off the system. This is useful
for IP address removal prior powering off. In order to accomplish that,
we listen on "Shutdown" systemd DBus signal.
The option is set to FALSE by default, it can be specified globally on
configuration file or per profile.
2024-03-04 18:16:54 +00:00
Fernando Fernandez Mancera
c8cf02e6b8
manager: abstract code from do_sleep_wake() to reuse it
...
The code that is adding the devices to the sleeping list and taking them
down should be moved to a separated function. This way we can reuse it
and we avoid duplicating code.
2024-03-04 18:29:07 +01:00
Fernando Fernandez Mancera
05ef682bb5
power: remove monitoring of upower signals
...
UPower "Sleeping" and "Resuming" signals were dropped long ago [1].
Therefore we are also dropping the support of it.
[1] https://lists.freedesktop.org/archives/devkit-devel/2014-March/001575.html
2024-03-04 18:29:07 +01:00
Fernando Fernandez Mancera
5ab87886f3
power: rename NMSleepMonitor to NMPowerMonitor
...
In order to provide the NMSleepMonitor a more generic usage, let's
rename the whole module to NMPowerMonitor. Nothing is exposed to the API
so it is a trivial renaming.
2024-03-04 18:29:07 +01:00
Fernando Fernandez Mancera
e7ad3d93ab
merge: branch 'systemd' into ff/fix_systemd
...
Disabled unused code and adapted Makefile and meson files.
2024-03-04 18:19:25 +01:00
Fernando Fernandez Mancera
bee8609c15
systemd: update code from upstream (2024-03-04)
...
This is a direct dump from systemd git.
$ git clean -fdx && \
git cat-file -p HEAD | sed '1,/^======$/ d' | bash - && \
git add .
======
SYSTEMD_DIR=../systemd
COMMIT=20ba8a5a666d8ddfdcd718a4836450bd876aa3dd
(
cd "$SYSTEMD_DIR"
git checkout "$COMMIT"
git reset --hard
git clean -fdx
)
git ls-files -z :/src/libnm-systemd-core/src/ \
:/src/libnm-systemd-shared/src/ \
:/src/libnm-std-aux/unaligned-fundamental.h \
:/src/libnm-std-aux/unaligned.h | \
xargs -0 rm -f
nm_copy_sd_shared() {
mkdir -p "./src/libnm-systemd-shared/$(dirname "$1")"
cp "$SYSTEMD_DIR/$1" "./src/libnm-systemd-shared/$1"
}
nm_copy_sd_core() {
mkdir -p "./src/libnm-systemd-core/$(dirname "$1")"
cp "$SYSTEMD_DIR/$1" "./src/libnm-systemd-core/$1"
}
nm_copy_sd_stdaux() {
mkdir -p "./src/libnm-std-aux/"
cp "$SYSTEMD_DIR/$1" "./src/libnm-std-aux/${1##*/}"
}
nm_copy_sd_core "src/libsystemd-network/dhcp-duid-internal.h"
nm_copy_sd_core "src/libsystemd-network/dhcp6-client-internal.h"
nm_copy_sd_core "src/libsystemd-network/dhcp6-internal.h"
nm_copy_sd_core "src/libsystemd-network/dhcp6-lease-internal.h"
nm_copy_sd_core "src/libsystemd-network/dhcp6-network.c"
nm_copy_sd_core "src/libsystemd-network/dhcp6-option.c"
nm_copy_sd_core "src/libsystemd-network/dhcp6-option.h"
nm_copy_sd_core "src/libsystemd-network/dhcp6-protocol.c"
nm_copy_sd_core "src/libsystemd-network/dhcp6-protocol.h"
nm_copy_sd_core "src/libsystemd-network/network-common.c"
nm_copy_sd_core "src/libsystemd-network/network-common.h"
nm_copy_sd_core "src/libsystemd-network/network-internal.h"
nm_copy_sd_core "src/libsystemd-network/sd-dhcp-duid.c"
nm_copy_sd_core "src/libsystemd-network/sd-dhcp6-client.c"
nm_copy_sd_core "src/libsystemd-network/sd-dhcp6-lease.c"
nm_copy_sd_core "src/libsystemd/sd-device/device-internal.h"
nm_copy_sd_core "src/libsystemd/sd-device/device-private.c"
nm_copy_sd_core "src/libsystemd/sd-device/device-private.h"
nm_copy_sd_core "src/libsystemd/sd-device/device-util.h"
nm_copy_sd_core "src/libsystemd/sd-device/sd-device.c"
nm_copy_sd_core "src/libsystemd/sd-event/event-source.h"
nm_copy_sd_core "src/libsystemd/sd-event/event-util.c"
nm_copy_sd_core "src/libsystemd/sd-event/event-util.h"
nm_copy_sd_core "src/libsystemd/sd-event/sd-event.c"
nm_copy_sd_core "src/libsystemd/sd-id128/id128-util.c"
nm_copy_sd_core "src/libsystemd/sd-id128/id128-util.h"
nm_copy_sd_core "src/libsystemd/sd-id128/sd-id128.c"
nm_copy_sd_core "src/systemd/_sd-common.h"
nm_copy_sd_core "src/systemd/sd-device.h"
nm_copy_sd_core "src/systemd/sd-dhcp-duid.h"
nm_copy_sd_core "src/systemd/sd-dhcp6-client.h"
nm_copy_sd_core "src/systemd/sd-dhcp6-lease.h"
nm_copy_sd_core "src/systemd/sd-dhcp6-option.h"
nm_copy_sd_core "src/systemd/sd-dhcp6-protocol.h"
nm_copy_sd_core "src/systemd/sd-event.h"
nm_copy_sd_core "src/systemd/sd-id128.h"
nm_copy_sd_core "src/systemd/sd-ndisc.h"
nm_copy_sd_shared "src/basic/alloc-util.c"
nm_copy_sd_shared "src/basic/alloc-util.h"
nm_copy_sd_shared "src/basic/arphrd-util.h"
nm_copy_sd_shared "src/basic/btrfs.c"
nm_copy_sd_shared "src/basic/btrfs.h"
nm_copy_sd_shared "src/basic/cgroup-util.h"
nm_copy_sd_shared "src/basic/chase.h"
nm_copy_sd_shared "src/basic/constants.h"
nm_copy_sd_shared "src/basic/devnum-util.c"
nm_copy_sd_shared "src/basic/devnum-util.h"
nm_copy_sd_shared "src/basic/dns-def.h"
nm_copy_sd_shared "src/basic/env-file.c"
nm_copy_sd_shared "src/basic/env-file.h"
nm_copy_sd_shared "src/basic/env-util.c"
nm_copy_sd_shared "src/basic/env-util.h"
nm_copy_sd_shared "src/basic/errno-util.h"
nm_copy_sd_shared "src/basic/escape.c"
nm_copy_sd_shared "src/basic/escape.h"
nm_copy_sd_shared "src/basic/ether-addr-util.c"
nm_copy_sd_shared "src/basic/ether-addr-util.h"
nm_copy_sd_shared "src/basic/extract-word.c"
nm_copy_sd_shared "src/basic/extract-word.h"
nm_copy_sd_shared "src/basic/fd-util.c"
nm_copy_sd_shared "src/basic/fd-util.h"
nm_copy_sd_shared "src/basic/fileio.c"
nm_copy_sd_shared "src/basic/fileio.h"
nm_copy_sd_shared "src/basic/format-util.c"
nm_copy_sd_shared "src/basic/format-util.h"
nm_copy_sd_shared "src/basic/fs-util.c"
nm_copy_sd_shared "src/basic/fs-util.h"
nm_copy_sd_shared "src/basic/glyph-util.c"
nm_copy_sd_shared "src/basic/glyph-util.h"
nm_copy_sd_shared "src/basic/hash-funcs.c"
nm_copy_sd_shared "src/basic/hash-funcs.h"
nm_copy_sd_shared "src/basic/hashmap.c"
nm_copy_sd_shared "src/basic/hashmap.h"
nm_copy_sd_shared "src/basic/hexdecoct.c"
nm_copy_sd_shared "src/basic/hexdecoct.h"
nm_copy_sd_shared "src/basic/hostname-util.c"
nm_copy_sd_shared "src/basic/hostname-util.h"
nm_copy_sd_shared "src/basic/in-addr-util.c"
nm_copy_sd_shared "src/basic/in-addr-util.h"
nm_copy_sd_shared "src/basic/inotify-util.c"
nm_copy_sd_shared "src/basic/inotify-util.h"
nm_copy_sd_shared "src/basic/io-util.c"
nm_copy_sd_shared "src/basic/io-util.h"
nm_copy_sd_shared "src/basic/iovec-util.h"
nm_copy_sd_shared "src/basic/label.c"
nm_copy_sd_shared "src/basic/label.h"
nm_copy_sd_shared "src/basic/list.h"
nm_copy_sd_shared "src/basic/locale-util.c"
nm_copy_sd_shared "src/basic/locale-util.h"
nm_copy_sd_shared "src/basic/lock-util.h"
nm_copy_sd_shared "src/basic/log.h"
nm_copy_sd_shared "src/basic/macro.h"
nm_copy_sd_shared "src/basic/memory-util.c"
nm_copy_sd_shared "src/basic/memory-util.h"
nm_copy_sd_shared "src/basic/mempool.c"
nm_copy_sd_shared "src/basic/mempool.h"
nm_copy_sd_shared "src/basic/missing_fcntl.h"
nm_copy_sd_shared "src/basic/missing_random.h"
nm_copy_sd_shared "src/basic/missing_socket.h"
nm_copy_sd_shared "src/basic/missing_stat.h"
nm_copy_sd_shared "src/basic/missing_syscall.h"
nm_copy_sd_shared "src/basic/missing_threads.h"
nm_copy_sd_shared "src/basic/missing_type.h"
nm_copy_sd_shared "src/basic/namespace-util.h"
nm_copy_sd_shared "src/basic/ordered-set.c"
nm_copy_sd_shared "src/basic/ordered-set.h"
nm_copy_sd_shared "src/basic/origin-id.h"
nm_copy_sd_shared "src/basic/parse-util.c"
nm_copy_sd_shared "src/basic/parse-util.h"
nm_copy_sd_shared "src/basic/path-util.c"
nm_copy_sd_shared "src/basic/path-util.h"
nm_copy_sd_shared "src/basic/pidref.h"
nm_copy_sd_shared "src/basic/prioq.c"
nm_copy_sd_shared "src/basic/prioq.h"
nm_copy_sd_shared "src/basic/process-util.c"
nm_copy_sd_shared "src/basic/process-util.h"
nm_copy_sd_shared "src/basic/random-util.c"
nm_copy_sd_shared "src/basic/random-util.h"
nm_copy_sd_shared "src/basic/ratelimit.c"
nm_copy_sd_shared "src/basic/ratelimit.h"
nm_copy_sd_shared "src/basic/set.h"
nm_copy_sd_shared "src/basic/signal-util.c"
nm_copy_sd_shared "src/basic/signal-util.h"
nm_copy_sd_shared "src/basic/siphash24.h"
nm_copy_sd_shared "src/basic/socket-util.c"
nm_copy_sd_shared "src/basic/socket-util.h"
nm_copy_sd_shared "src/basic/sort-util.h"
nm_copy_sd_shared "src/basic/sparse-endian.h"
nm_copy_sd_shared "src/basic/stat-util.c"
nm_copy_sd_shared "src/basic/stat-util.h"
nm_copy_sd_shared "src/basic/stdio-util.h"
nm_copy_sd_shared "src/basic/string-table.c"
nm_copy_sd_shared "src/basic/string-table.h"
nm_copy_sd_shared "src/basic/string-util.c"
nm_copy_sd_shared "src/basic/string-util.h"
nm_copy_sd_shared "src/basic/strv.c"
nm_copy_sd_shared "src/basic/strv.h"
nm_copy_sd_shared "src/basic/strxcpyx.c"
nm_copy_sd_shared "src/basic/strxcpyx.h"
nm_copy_sd_shared "src/basic/time-util.c"
nm_copy_sd_shared "src/basic/time-util.h"
nm_copy_sd_shared "src/basic/tmpfile-util.c"
nm_copy_sd_shared "src/basic/tmpfile-util.h"
nm_copy_sd_shared "src/basic/umask-util.h"
nm_copy_sd_shared "src/basic/user-util.h"
nm_copy_sd_shared "src/basic/utf8.c"
nm_copy_sd_shared "src/basic/utf8.h"
nm_copy_sd_shared "src/fundamental/logarithm.h"
nm_copy_sd_shared "src/fundamental/macro-fundamental.h"
nm_copy_sd_shared "src/fundamental/memory-util-fundamental.h"
nm_copy_sd_shared "src/fundamental/sha256.c"
nm_copy_sd_shared "src/fundamental/sha256.h"
nm_copy_sd_shared "src/fundamental/string-util-fundamental.c"
nm_copy_sd_shared "src/fundamental/string-util-fundamental.h"
nm_copy_sd_shared "src/shared/dns-domain.c"
nm_copy_sd_shared "src/shared/dns-domain.h"
nm_copy_sd_shared "src/shared/log-link.h"
nm_copy_sd_shared "src/shared/web-util.c"
nm_copy_sd_shared "src/shared/web-util.h"
nm_copy_sd_stdaux "src/basic/unaligned.h"
nm_copy_sd_stdaux "src/fundamental/unaligned-fundamental.h"
2024-03-04 12:29:33 +01:00
Íñigo Huguet
14cad33baa
merge: branch 'jv/test-dist-tarballs'
...
gitlab-ci: test re-buildability of distribution tarballs
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1862
2024-03-01 07:56:24 +00:00
Jan Vaclav
47f01c805d
python: reformat with black-24.1.1-1.fc39.noarch
2024-03-01 07:51:21 +00:00
Jan Vaclav
61f0531509
gitlab-ci: test re-buildability of distribution tarballs
...
Adds tests for making a distribution tarball, and then attempting to build NM from its contents.
Files have been left out from the distribution in the past by accident (e.g. 75027879
, b2931c96
)
and hopefully this test will catch this type of errors.
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1862
2024-03-01 07:51:21 +00:00
Íñigo Huguet
4c76d49f1f
merge: branch 'meson-check-fix'
...
build: specify run_command semantics
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1869
2024-03-01 07:48:26 +00:00
Yegor Yefremov
be872e193e
build: specify run_command semantics
...
"check" argument will change its default value to "true" in the future
versions. Hence, set it explicitly to "false", to preserve current
semantics.
Fixes the following warning:
WARNING: You should add the boolean check kwarg to the run_command call.
It currently defaults to false,
but it will default to true in future releases of meson.
See also: https://github.com/mesonbuild/meson/issues/9300
2024-03-01 07:46:32 +00:00
Íñigo Huguet
0af1575695
merge: branch 'meson-warnings'
...
build: rework -Wall and -Wextra declaration
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1868
2024-03-01 07:46:20 +00:00
Yegor Yefremov
b864eb2eb3
build: rework -Wall and -Wextra declaration
...
Use warning_level instead of defining -Wall and -Wextra explicitly.
Fixes the following warning:
meson.build:235: WARNING: Consider using the built-in warning_level
option instead of using "-Wall".
2024-03-01 07:45:42 +00:00
Íñigo Huguet
d5c12a137b
merge: branch 'main'
...
po: update Swedish (sv) translation
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1876
2024-02-27 10:44:43 +00:00
Luna Jernberg
0fec4a5cb7
po: update Swedish (sv) translation
2024-02-27 07:48:21 +00:00
Stanislas FAYE
9920a4b576
release: bump version to 1.47.1 (development)
2024-02-26 15:38:17 +01:00
Stanislas FAYE
11c59f8bcc
test: disable vlan_xgress unit test
...
Disable the vlan_xgress unit test which was failing.
This test is currently being work and is going to be fixed soon.
(cherry picked from commit 6e30e37ebe
)
2024-02-26 14:43:24 +01:00
Stanislas FAYE
e39f48a30a
release: bump version to 1.46.0
2024-02-22 16:08:57 +01:00
Stanislas FAYE
6e30e37ebe
test: disable vlan_xgress unit test
...
Disable the vlan_xgress unit test which was failing.
This test is currently being work and is going to be fixed soon.
2024-02-22 12:29:12 +01:00
Stanislas FAYE
10021eed4f
NEWS: update changes in 1.46
...
(cherry picked from commit 7c8207b2d0
)
2024-02-21 14:04:34 +01:00
Stanislas Faye
9a22551c47
merge: branch 'sf/news-1.46'
...
NEWS: update changes in 1.46
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1874
2024-02-21 12:56:38 +00:00
Stanislas FAYE
7c8207b2d0
NEWS: update changes in 1.46
2024-02-21 13:42:30 +01:00
Beniamino Galvani
eb1afb3e7e
merge: branch 'bg/create-generic-devices'
...
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1752
(cherry picked from commit edca33e28f
)
2024-02-21 11:49:24 +01:00
Beniamino Galvani
f9c0f7ae64
manager: make generic devices compatible with all link types
...
If a generic device is present and the name matches, it is compatible
with any link type.
For example, if a generic connection has a device-handler that creates
a dummy interface, the link is compatible with the NMDeviceGeneric.
(cherry picked from commit 5978fb2b27
)
2024-02-21 11:49:21 +01:00
Beniamino Galvani
3bb34edc53
core: persist state of software generic devices across restarts
...
When a generic connection has a custom device-handler, it always
generates a NMDeviceGeneric, even when the link that gets created is
of a type natively supported by NM. On service restart, we need to
keep track that the device is generic or otherwise a different device
type will be instantiated.
(cherry picked from commit f2613be150
)
2024-02-21 11:49:20 +01:00
Beniamino Galvani
f8e020c29e
device: support creating generic devices via device-handler
...
If the device-handler of the generic connection is set, the connection
is virtual and the device is created by invoking the device-handler
via NetworkManager-dispatcher service.
With this change, a generic device now represents two different device
classes:
- existing interfaces that are not natively supported or recognized
by NetworkManager. Those devices have the `has_device_handler`
property set to FALSE;
- interfaces that are created by NM by invoking the device-handler;
they have `has_device_handler` set to TRUE.
(cherry picked from commit df6c35ec75
)
2024-02-21 11:49:19 +01:00
Beniamino Galvani
a5d194f8a6
examples: add example device handler dispatcher for geneve
...
(cherry picked from commit ae7ac3c8b7
)
2024-02-21 11:49:18 +01:00
Beniamino Galvani
cc5ebf265d
dispatcher: read device-handler's stdout into a dictionary
...
Device handlers need a way to pass data back to NetworkManager, such
as the ifindex and an error message. Allow them to return a dictionary
on standard output, where each line contains a "$key=$value" pair.
In the daemon, the dictionary is returned via the callback function.
(cherry picked from commit d72f26b875
)
2024-02-21 11:49:17 +01:00
Beniamino Galvani
5c33b14fe0
dispatcher: support device-handler actions
...
"device-add" and "device-delete" actions are called for
device-handlers of generic devices. They differ from other actions in
the following aspects:
- only one script is invoked, the one with name specified by the
device-handler property;
- the script is searched in the "device" subdirectory;
- since there is only one script executed, the result and error
string from that script are returned by NM in the callback function.
(cherry picked from commit ee5845063d
)
2024-02-21 11:49:16 +01:00
Beniamino Galvani
220d42c6f8
core/dispatcher: prefer the Action2() method and fall back to Action()
...
Call the Action2() method first, and fall back to the old Action() if
the new one is not available. This allows full interoperability
between different versions of the dispatcher service and NM.
(cherry picked from commit 8fd0d39444
)
2024-02-21 11:49:15 +01:00
Beniamino Galvani
ad5b3b38db
dispatcher: add Action2() D-Bus method
...
Currently, the dispatcher service implements an Action() method to
dispatch events. In the next commits, we'll need to add new
parameters, which is not possible with the current signature.
Introduce a new Action2() method, similar to the existing one but with
the following changes:
- it accepts an additional "options" input parameter of type a{sv};
- for each script executed, it also returns a dictionary of type
a{sv}.
The new parameters will allow to easily extend functionality in the
future without having to implement an Action3().
(cherry picked from commit abf0f03d25
)
2024-02-21 11:49:14 +01:00