summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMikhail Efremov <sem altlinux org>2014-03-31 20:29:05 +0400
committerDan Williams <dcbw@redhat.com>2014-04-07 09:52:06 -0500
commit194b14e39899e8f3a73b1a151ed5384ecbf80149 (patch)
treec5b23cf671ddec8830869bf572981caae2a44a36
parent2748bcfebff927bc2bae988d42e143e3fd68445c (diff)
downloadNetworkManager-194b14e39899e8f3a73b1a151ed5384ecbf80149.tar.gz
core: don't generate a connection for unmanaged devices
-rw-r--r--src/nm-manager.c9
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 :