2007-10-06 Dan Williams <dcbw@redhat.com>

* libnm-util/nm-connection.c
	  libnm-util/nm-connection.h
		- (nm_connection_replace_settings): new function



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2940 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
This commit is contained in:
Dan Williams 2007-10-06 04:25:48 +00:00
parent d030019245
commit a0e84d2f5a
3 changed files with 36 additions and 0 deletions

View file

@ -1,3 +1,9 @@
2007-10-06 Dan Williams <dcbw@redhat.com>
* libnm-util/nm-connection.c
libnm-util/nm-connection.h
- (nm_connection_replace_settings): new function
2007-10-06 Dan Williams <dcbw@redhat.com>
* libnm-glib/nm-device-802-11-wireless.c

View file

@ -108,6 +108,33 @@ nm_connection_get_setting (NMConnection *connection, const char *setting_name)
return (NMSetting *) g_hash_table_lookup (priv->settings, setting_name);
}
gboolean
nm_connection_replace_settings (NMConnection *connection,
GHashTable *new_settings)
{
NMConnectionPrivate *priv;
g_return_val_if_fail (NM_IS_CONNECTION (connection), FALSE);
g_return_val_if_fail (new_settings != NULL, FALSE);
priv = NM_CONNECTION_GET_PRIVATE (connection);
g_hash_table_remove_all (priv->settings);
g_hash_table_foreach (new_settings, parse_one_setting, connection);
if (g_hash_table_size (priv->settings) < 1) {
g_warning ("No settings found.");
return FALSE;
}
if (!nm_settings_verify (priv->settings)) {
g_warning ("Settings invalid.");
return FALSE;
}
return TRUE;
}
gboolean
nm_connection_compare (NMConnection *connection, NMConnection *other)
{

View file

@ -35,6 +35,9 @@ void nm_connection_add_setting (NMConnection *connection,
NMSetting *nm_connection_get_setting (NMConnection *connection,
const char *setting_name);
gboolean nm_connection_replace_settings (NMConnection *connection,
GHashTable *new_settings);
gboolean nm_connection_compare (NMConnection *connection,
NMConnection *other);