manager: create a virtual device only if the connection can autoconnect

The autoconnection for virtual devices currently works in two
phases. First we detect that there is suitable profile that can
autoconnect and we realize the device. Then, when the device becomes
'disconnected', autoconnect kicks in and starts the activation.

However, if autoconnect is blocked for a device, currently we do step
1 without step 2, leaving a stale interface around. Fix this by also
checking that autoconnect is not blocked during step 1.

https://bugzilla.redhat.com/show_bug.cgi?id=1765047

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/merge_requests/360
(cherry picked from commit 6c716912eb)
This commit is contained in:
Beniamino Galvani
2019-12-13 18:05:38 +01:00
committed by Thomas Haller
parent f1d4853927
commit 944ff9f9dc

View File

@@ -2024,7 +2024,8 @@ system_create_virtual_device (NMManager *self, NMConnection *connection)
s_con = nm_connection_get_setting_connection (candidate);
g_assert (s_con);
if (!nm_setting_connection_get_autoconnect (s_con))
if ( !nm_setting_connection_get_autoconnect (s_con)
|| nm_settings_connection_autoconnect_is_blocked (connections[i]))
continue;
/* Create any backing resources the device needs */