Commit graph

30536 commits

Author SHA1 Message Date
Thomas Haller
b2a5b179fd platform: avoid undefined behavior comparing unrelated pointers in nmp_object_id_cmp()
Pointers cannot in general be compared directly. Cast to an int first
to avoid the undefined behavior.
2020-04-22 09:49:45 +02:00
Thomas Haller
95ccfdb69a shared: add NM_CMP_DIRECT_PTR() macro 2020-04-22 09:49:45 +02:00
Beniamino Galvani
93b130c05a bluetooth: disconnect signal on dispose
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/417

Fixes: 4154d9618c ('bluetooth: refactor BlueZ handling and let NMBluezManager cache ObjectManager data')
(cherry picked from commit 5c547fdab3)
2020-04-22 09:22:45 +02:00
Beniamino Galvani
5c547fdab3 bluetooth: disconnect signal on dispose
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/417

Fixes: 4154d9618c ('bluetooth: refactor BlueZ handling and let NMBluezManager cache ObjectManager data')
2020-04-22 09:15:43 +02:00
Beniamino Galvani
2d06a4e11a supplicant: set error when interface creation fails and was cancelled
https://bugzilla.redhat.com/show_bug.cgi?id=1823164

Fixes: b83f07916a ('supplicant: large rework of wpa_supplicant handling')
(cherry picked from commit fb023cc6e8)
2020-04-21 17:27:49 +02:00
Beniamino Galvani
fb023cc6e8 supplicant: set error when interface creation fails and was cancelled
https://bugzilla.redhat.com/show_bug.cgi?id=1823164

Fixes: b83f07916a ('supplicant: large rework of wpa_supplicant handling')
2020-04-21 17:26:51 +02:00
Thomas Haller
f4cf907a42 auth-manager: watch PolicyKit name owner to emit changed signal when name owner appears
We shall emit a changed signal when PolicyKit changes. That implies also
emitting the signal when PolicyKit starts. Watch the name owner for
that.

Note that I don't manage to actually receive the "Changed" signal from
PolicyKit. That seems to be due to wrong D-Bus configuration which
prevents the "Changed" signal from PolicyKit to reach NetworkManager.
That is independent from this patch.

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/469
2020-04-21 12:19:43 +02:00
Beniamino Galvani
3a0d817f69 dns: fix handling of trust-ad option
Fixes: 5e47fb630b ('dns: add trust-ad DNS option only if all contributing settings agree')
(cherry picked from commit cb9a6f3b92)
2020-04-21 10:55:11 +02:00
Beniamino Galvani
cb9a6f3b92 dns: fix handling of trust-ad option
Fixes: 5e47fb630b ('dns: add trust-ad DNS option only if all contributing settings agree')
2020-04-21 10:50:12 +02:00
Thomas Haller
938aca3fab NEWS: update 2020-04-21 09:08:06 +02:00
Beniamino Galvani
4cf63dfa15 dhcp-helper: retry in case of failure connecting to D-Bus unix socket
Connecting to the unix socket can fail with EAGAIN if there are too
many pending connections and the server can't accept them in time
before reaching backlog capacity. Ideally the server should increase
the backlog length, but GLib doesn't provide a way to change it for a
GDBus server. Retry for up to 5 seconds in case of failure.

https://bugzilla.redhat.com/show_bug.cgi?id=1821594
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/471
(cherry picked from commit eefe5dacaa)
2020-04-21 08:57:30 +02:00
Beniamino Galvani
eefe5dacaa dhcp-helper: retry in case of failure connecting to D-Bus unix socket
Connecting to the unix socket can fail with EAGAIN if there are too
many pending connections and the server can't accept them in time
before reaching backlog capacity. Ideally the server should increase
the backlog length, but GLib doesn't provide a way to change it for a
GDBus server. Retry for up to 5 seconds in case of failure.

https://bugzilla.redhat.com/show_bug.cgi?id=1821594
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/471
2020-04-21 08:54:44 +02:00
Thomas Haller
3192f65d3b ndisc: merge branch 'th/revert-ipv6-slaac-lifetimes' into nm-1-24
These two changes are from a draft. They may not yet be ready for our
1.24.0 stable release. Revert the change for now.

Note that for current "master" (1.25.0-dev), the change is still in
place. We will decide what to do about it before 1.26.0 release.

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/396#note_462123
2020-04-21 08:43:23 +02:00
Thomas Haller
5409db9fbd NEWS: update 2020-04-21 08:43:11 +02:00
Thomas Haller
ad5fdd9d62 Revert "IPv6 SLAAC: Clamp received PIO and RIO Lifetime Values"
This reverts commit 0cbd9193cd.
This reverts commit a5290915d5.
2020-04-21 08:37:48 +02:00
Thomas Haller
a88be01da2 Revert "IPv6 SLAAC: Honor small PIO Valid Lifetimes"
This reverts commit 2da092b592.
2020-04-21 08:37:03 +02:00
Beniamino Galvani
1dfd35da20 wifi: change return type of p2p-connect D-Bus method call
Fix the following error when invoking the Connect() p2p method:

 call-p2p-connect: failed with Method “fi.w1.wpa_supplicant1.Interface.P2PDevice.Connect” returned type “(s)”, but expected “()”

Fixes: b83f07916a ('supplicant: large rework of wpa_supplicant handling')
(cherry picked from commit a5338affb5)
2020-04-20 17:13:39 +02:00
Beniamino Galvani
a5338affb5 wifi: change return type of p2p-connect D-Bus method call
Fix the following error when invoking the Connect() p2p method:

 call-p2p-connect: failed with Method “fi.w1.wpa_supplicant1.Interface.P2PDevice.Connect” returned type “(s)”, but expected “()”

Fixes: b83f07916a ('supplicant: large rework of wpa_supplicant handling')
2020-04-20 17:12:18 +02:00
Thomas Haller
4938299a9b libnm: cleanup _nm_utils_dns_option_validate()
Avoid unnecessary string copies. Most option don't have a delimiter
and numerical argument, and there is no need to clone the string.

(cherry picked from commit 61a97f8b0f)
2020-04-20 15:55:52 +02:00
Thomas Haller
d78dadc9eb dns: add trust-ad DNS option only if all contributing settings agree
https://bugzilla.redhat.com/show_bug.cgi?id=1825285
(cherry picked from commit 5e47fb630b)
2020-04-20 15:55:51 +02:00
Thomas Haller
ccb043d78c libnm: document supported "ipv[46].dns-option" values
(cherry picked from commit e261e941fd)
2020-04-20 15:55:50 +02:00
Thomas Haller
61a97f8b0f libnm: cleanup _nm_utils_dns_option_validate()
Avoid unnecessary string copies. Most option don't have a delimiter
and numerical argument, and there is no need to clone the string.
2020-04-20 15:54:43 +02:00
Thomas Haller
5e47fb630b dns: add trust-ad DNS option only if all contributing settings agree
https://bugzilla.redhat.com/show_bug.cgi?id=1825285
2020-04-20 15:54:43 +02:00
Thomas Haller
e261e941fd libnm: document supported "ipv[46].dns-option" values 2020-04-20 15:54:43 +02:00
Thomas Haller
24ab6b6cdc tests: abort test runner if exec fails
(cherry picked from commit 2ad8e6acae)
2020-04-20 11:52:11 +02:00
Thomas Haller
2ad8e6acae tests: abort test runner if exec fails 2020-04-20 11:49:31 +02:00
Beniamino Galvani
5b83609b01 libnm-core: add 'no-reload' and 'trust-ad' resolv.conf options
https://sourceware.org/git/?p=glibc.git;a=blob;f=resolv/res_init.c;h=95dce098aa7ec80f2e36f5c25022641d65e1d5e5;hb=9ea3686266dca3f004ba874745a4087a89682617#l681

https://bugzilla.redhat.com/show_bug.cgi?id=1825285
(cherry picked from commit 40b2cf7a0c)
2020-04-20 11:32:56 +02:00
Beniamino Galvani
40b2cf7a0c libnm-core: add 'no-reload' and 'trust-ad' resolv.conf options
https://sourceware.org/git/?p=glibc.git;a=blob;f=resolv/res_init.c;h=95dce098aa7ec80f2e36f5c25022641d65e1d5e5;hb=9ea3686266dca3f004ba874745a4087a89682617#l681

https://bugzilla.redhat.com/show_bug.cgi?id=1825285
2020-04-20 11:28:29 +02:00
Antonio Cardace
8d3b3a55b3 clients: merge branch 'ac/cli_hide_if_default'
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/470

(cherry picked from commit f957359421)
2020-04-20 08:54:56 +02:00
Antonio Cardace
aacf8bd27d ethtool: refactor how options are hidden if default
Just use the new flag NMMetaPropertyInfo.

(cherry picked from commit a5916de599)
2020-04-20 08:54:55 +02:00
Antonio Cardace
486161cff4 bridge: make some advanced options hidden if default
The options are:
  * group-address
  * multicast-querier
  * multicast-query-use-ifaddr
  * multicast-router
  * vlan-stats-enabled
  * vlan-protocol

(cherry picked from commit 3af07fd415)
2020-04-20 08:54:55 +02:00
Thomas Haller
fc582312f7 cli: let _print_fill() hide option if NM_META_ACCESSOR_GET_OUT_FLAGS_HIDE is set
Regardless, whether the option is also currently the default.

(cherry picked from commit 69eca25391)
2020-04-20 08:54:55 +02:00
Antonio Cardace
fd37111986 clients: allow properties to be hidden if they have the default value
(cherry picked from commit b94fcb2a94)
2020-04-20 08:54:55 +02:00
Gilles Dartiguelongue
7b0130d5d7 build: remove subshells and fix invalid test syntax
Signed-off-by: Gilles Dartiguelongue <eva@gentoo.org>

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/472
(cherry picked from commit e073491b9c)
2020-04-20 08:54:38 +02:00
Gilles Dartiguelongue
e073491b9c build: remove subshells and fix invalid test syntax
Signed-off-by: Gilles Dartiguelongue <eva@gentoo.org>

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/472
2020-04-20 08:52:24 +02:00
Thomas Haller
1667be7cf5 contrib/rpm: fix spec file using bare words
error: bare words are no longer supported, please use "...":  no != "yes"
  error:                                                        ^
  error: /builds/NetworkManager/NetworkManager/contrib/fedora/rpm/NetworkManager.20200418-170120.dp5cp5/SPECS/NetworkManager.spec:596: bad %if condition:  no != "yes"

(cherry picked from commit ed94ab6e23)
2020-04-19 21:45:05 +02:00
Thomas Haller
c869d792a2 contrib/rpm: fix spec file using bare words
error: bare words are no longer supported, please use "...":  no != yes
  error: /builds/NetworkManager/NetworkManager/contrib/fedora/rpm/NetworkManager.20200418-163008.VM582H/SPECS/NetworkManager.spec:596: bad %if condition:  no != yes

(cherry picked from commit be78a12012)
2020-04-19 21:45:04 +02:00
Thomas Haller
ed94ab6e23 contrib/rpm: fix spec file using bare words
error: bare words are no longer supported, please use "...":  no != "yes"
  error:                                                        ^
  error: /builds/NetworkManager/NetworkManager/contrib/fedora/rpm/NetworkManager.20200418-170120.dp5cp5/SPECS/NetworkManager.spec:596: bad %if condition:  no != "yes"
2020-04-18 19:10:46 +02:00
Thomas Haller
be78a12012 contrib/rpm: fix spec file using bare words
error: bare words are no longer supported, please use "...":  no != yes
  error: /builds/NetworkManager/NetworkManager/contrib/fedora/rpm/NetworkManager.20200418-163008.VM582H/SPECS/NetworkManager.spec:596: bad %if condition:  no != yes
2020-04-18 18:33:55 +02:00
Beniamino Galvani
c5f0d325ad ifcfg-rh: add PKEY_ID to well-known keys
Fixes: 81e6fe963e ('ifcfg-rh: add functions to detect well-known ifcfg-rh keys')
(cherry picked from commit 70916a1183)
2020-04-17 09:50:40 +02:00
Beniamino Galvani
70916a1183 ifcfg-rh: add PKEY_ID to well-known keys
Fixes: 81e6fe963e ('ifcfg-rh: add functions to detect well-known ifcfg-rh keys')
2020-04-17 09:47:16 +02:00
Antonio Cardace
f957359421
clients: merge branch 'ac/cli_hide_if_default'
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/470
2020-04-16 18:21:27 +02:00
Antonio Cardace
a5916de599
ethtool: refactor how options are hidden if default
Just use the new flag NMMetaPropertyInfo.
2020-04-16 10:52:46 +02:00
Antonio Cardace
3af07fd415
bridge: make some advanced options hidden if default
The options are:
  * group-address
  * multicast-querier
  * multicast-query-use-ifaddr
  * multicast-router
  * vlan-stats-enabled
  * vlan-protocol
2020-04-16 10:52:45 +02:00
Thomas Haller
69eca25391
cli: let _print_fill() hide option if NM_META_ACCESSOR_GET_OUT_FLAGS_HIDE is set
Regardless, whether the option is also currently the default.
2020-04-16 10:52:45 +02:00
Antonio Cardace
b94fcb2a94
clients: allow properties to be hidden if they have the default value 2020-04-16 10:52:42 +02:00
Thomas Haller
f00d306ae7 keyfile: minor cleanup handling error in read_array_of_uint()
Why "if (length > G_MAXUINT)"? This is never going to hit. Also,
we probably should actual missing keys handle differently from
empty lists. If @error is set, return without setting the property.

(cherry picked from commit 2cf31bfef0)
2020-04-15 22:41:02 +02:00
Thomas Haller
97139f5e3d keyfile: avoid assertion failure in nm_keyfile_plugin_kf_get_{string,integer}_list()
g_key_file_get_integer_list() can return %NULL without setting an error.
That is the case if the key is set to an empty value.

For X sake, this API. Read the documentation and figure out whether
the function can return %NULL without reporting an error.

Anyway, avoid the assertion failure.

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/412
(cherry picked from commit 8f46425b11)
2020-04-15 22:41:02 +02:00
Thomas Haller
432d1c6eb5 keyfile: cleanup mac_address_parser()
(cherry picked from commit 12c2aacea7)
2020-04-15 22:41:02 +02:00
Thomas Haller
2cf31bfef0 keyfile: minor cleanup handling error in read_array_of_uint()
Why "if (length > G_MAXUINT)"? This is never going to hit. Also,
we probably should actual missing keys handle differently from
empty lists. If @error is set, return without setting the property.
2020-04-15 22:37:51 +02:00