diff options
author | Mikhail Efremov <sem altlinux org> | 2014-03-31 20:29:05 +0400 |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2014-04-07 09:52:06 -0500 |
commit | 194b14e39899e8f3a73b1a151ed5384ecbf80149 (patch) | |
tree | c5b23cf671ddec8830869bf572981caae2a44a36 | |
parent | 2748bcfebff927bc2bae988d42e143e3fd68445c (diff) | |
download | NetworkManager-194b14e39899e8f3a73b1a151ed5384ecbf80149.tar.gz |
core: don't generate a connection for unmanaged devices
-rw-r--r-- | src/nm-manager.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/nm-manager.c b/src/nm-manager.c index 9d08b898e9..9300050ece 100644 --- a/src/nm-manager.c +++ b/src/nm-manager.c @@ -1751,6 +1751,7 @@ add_device (NMManager *self, NMDevice *device, gboolean generate_con) char *path; static guint32 devcount = 0; const GSList *unmanaged_specs; + gboolean unmanaged = FALSE; NMConnection *connection = NULL; gboolean enabled = FALSE; RfKillType rtype; @@ -1847,15 +1848,17 @@ add_device (NMManager *self, NMDevice *device, gboolean generate_con) nm_log_info (LOGD_CORE, "(%s): exported as %s", iface, path); g_free (path); + unmanaged_specs = nm_settings_get_unmanaged_specs (priv->settings); + unmanaged = nm_device_spec_match_list (device, unmanaged_specs); + /* Don't generate a connection e.g. for devices NM just created, or * for the loopback */ - if (generate_con) + if (generate_con && !unmanaged) connection = get_existing_connection (self, device); /* Start the device if it's supposed to be managed */ - unmanaged_specs = nm_settings_get_unmanaged_specs (priv->settings); if ( !manager_sleeping (self) - && !nm_device_spec_match_list (device, unmanaged_specs)) { + && !unmanaged) { nm_device_set_manager_managed (device, TRUE, connection ? NM_DEVICE_STATE_REASON_CONNECTION_ASSUMED : |