NetworkManager r3759 - in trunk: . libnm-util



Author: tambeti
Date: Fri Jun 20 11:26:50 2008
New Revision: 3759
URL: http://svn.gnome.org/viewvc/NetworkManager?rev=3759&view=rev

Log:
2008-06-20  Tambet Ingo  <tambet gmail com>

	* libnm-util/nm-connection.c (nm_connection_duplicate): Implement.


Modified:
   trunk/ChangeLog
   trunk/libnm-util/nm-connection.c
   trunk/libnm-util/nm-connection.h

Modified: trunk/libnm-util/nm-connection.c
==============================================================================
--- trunk/libnm-util/nm-connection.c	(original)
+++ trunk/libnm-util/nm-connection.c	Fri Jun 20 11:26:50 2008
@@ -700,6 +700,26 @@
 }
 
 static void
+duplicate_cb (gpointer key, gpointer value, gpointer user_data)
+{
+	nm_connection_add_setting (NM_CONNECTION (user_data), nm_setting_duplicate (NM_SETTING (value)));
+}
+
+NMConnection *
+nm_connection_duplicate (NMConnection *connection)
+{
+	NMConnection *dup;
+
+	g_return_val_if_fail (NM_IS_CONNECTION (connection), NULL);
+
+	dup = nm_connection_new ();
+	nm_connection_set_scope (dup, nm_connection_get_scope (connection));
+	g_hash_table_foreach (NM_CONNECTION_GET_PRIVATE (connection)->settings, duplicate_cb, dup);
+
+	return dup;
+}
+
+static void
 nm_connection_init (NMConnection *connection)
 {
 	NMConnectionPrivate *priv = NM_CONNECTION_GET_PRIVATE (connection);

Modified: trunk/libnm-util/nm-connection.h
==============================================================================
--- trunk/libnm-util/nm-connection.h	(original)
+++ trunk/libnm-util/nm-connection.h	Fri Jun 20 11:26:50 2008
@@ -42,6 +42,8 @@
 
 NMConnection *nm_connection_new_from_hash (GHashTable *hash, GError **error);
 
+NMConnection *nm_connection_duplicate     (NMConnection *connection);
+
 void          nm_connection_add_setting   (NMConnection *connection,
 								   NMSetting    *setting);
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]