summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLubomir Rintel <lkundrak@v3.sk>2015-04-22 15:05:53 +0200
committerLubomir Rintel <lkundrak@v3.sk>2015-04-27 11:33:58 +0200
commit8a00bb36ec9091a6438b02faf324fac3befe0016 (patch)
tree39d17be31efa9fc40052f57738d257d9b6a38f12
parentcd2cef9cab62db042f646bf0fcdc318106fc627f (diff)
downloadNetworkManager-8a00bb36ec9091a6438b02faf324fac3befe0016.tar.gz
nm-settings: add nm_settings_has_connection()
Useful for checking if a connection is already deleted. https://bugzilla.gnome.org/show_bug.cgi?id=744812 https://bugzilla.redhat.com/show_bug.cgi?id=1174164
-rw-r--r--src/settings/nm-settings.c15
-rw-r--r--src/settings/nm-settings.h2
2 files changed, 17 insertions, 0 deletions
diff --git a/src/settings/nm-settings.c b/src/settings/nm-settings.c
index 4a03f4a5f2..60f98948d5 100644
--- a/src/settings/nm-settings.c
+++ b/src/settings/nm-settings.c
@@ -467,6 +467,21 @@ notify (GObject *object, GParamSpec *pspec)
g_slice_free (GValue, value);
}
+gboolean
+nm_settings_has_connection (NMSettings *self, NMConnection *connection)
+{
+ NMSettingsPrivate *priv = NM_SETTINGS_GET_PRIVATE (self);
+ GHashTableIter iter;
+ gpointer data;
+
+ g_hash_table_iter_init (&iter, priv->connections);
+ while (g_hash_table_iter_next (&iter, NULL, &data))
+ if (data == connection)
+ return TRUE;
+
+ return FALSE;
+}
+
const GSList *
nm_settings_get_unmanaged_specs (NMSettings *self)
{
diff --git a/src/settings/nm-settings.h b/src/settings/nm-settings.h
index 9c0a4c835e..d196efe655 100644
--- a/src/settings/nm-settings.h
+++ b/src/settings/nm-settings.h
@@ -111,6 +111,8 @@ NMSettingsConnection *nm_settings_get_connection_by_path (NMSettings *settings,
NMSettingsConnection *nm_settings_get_connection_by_uuid (NMSettings *settings,
const char *uuid);
+gboolean nm_settings_has_connection (NMSettings *self, NMConnection *connection);
+
const GSList *nm_settings_get_unmanaged_specs (NMSettings *self);
char *nm_settings_get_hostname (NMSettings *self);