diff options
author | Antti Kaijanmäki <antti@kaijanmaki.net> | 2008-08-18 08:30:28 +0000 |
---|---|---|
committer | Antti Kaijanmäki <antti@kaijanmaki.net> | 2008-08-18 08:30:28 +0000 |
commit | 2c21a2fe6b0498585fba0beb003ac8aa6351803c (patch) | |
tree | 9544edfe2ed9a6c96eda933c35fb5110f1d666c6 /system-settings/src | |
parent | e04934d93efba622123809cc767488af673b2967 (diff) | |
download | NetworkManager-mbca.tar.gz |
keep up with trunkmbca
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/branches/mbca@3981 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Diffstat (limited to 'system-settings/src')
-rw-r--r-- | system-settings/src/dbus-settings.c | 21 | ||||
-rw-r--r-- | system-settings/src/nm-system-config-interface.c | 7 | ||||
-rw-r--r-- | system-settings/src/nm-system-config-interface.h | 7 |
3 files changed, 25 insertions, 10 deletions
diff --git a/system-settings/src/dbus-settings.c b/system-settings/src/dbus-settings.c index 21c0a448e1..0cb8abcb2c 100644 --- a/system-settings/src/dbus-settings.c +++ b/system-settings/src/dbus-settings.c @@ -1,8 +1,10 @@ -/* -*- Mode: C; tab-width: 5; indent-tabs-mode: t; c-basic-offset: 5 -*- */ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */ /* NetworkManager system settings service * * Søren Sandmann <sandmann@daimi.au.dk> + * Dan Williams <dcbw@redhat.com> + * Tambet Ingo <tambet@gmail.com> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -18,7 +20,8 @@ * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * - * (C) Copyright 2007 Red Hat, Inc. + * (C) Copyright 2007 - 2008 Red Hat, Inc. + * (C) Copyright 2008 Novell, Inc. */ #include <NetworkManager.h> @@ -263,7 +266,9 @@ nm_sysconfig_settings_class_init (NMSysconfigSettingsClass *class) dbus_g_object_type_install_info (G_TYPE_FROM_CLASS (settings_class), &dbus_glib_nm_settings_system_object_info); - dbus_g_error_domain_register (NM_SYSCONFIG_SETTINGS_ERROR, NULL, NM_TYPE_SYSCONFIG_SETTINGS_ERROR); + dbus_g_error_domain_register (NM_SYSCONFIG_SETTINGS_ERROR, + NM_DBUS_IFACE_SETTINGS_SYSTEM, + NM_TYPE_SYSCONFIG_SETTINGS_ERROR); } static void @@ -453,6 +458,8 @@ impl_settings_add_connection (NMSysconfigSettings *self, connection = nm_connection_new_from_hash (hash, &cnfh_error); if (connection) { + GError *add_error = NULL; + /* Here's how it works: 1) plugin writes a connection. 2) plugin notices that a new connection is available for reading. @@ -461,9 +468,12 @@ impl_settings_add_connection (NMSysconfigSettings *self, */ success = FALSE; - for (iter = priv->plugins; iter && success == FALSE; iter = iter->next) + for (iter = priv->plugins; iter && success == FALSE; iter = iter->next) { success = nm_system_config_interface_add_connection (NM_SYSTEM_CONFIG_INTERFACE (iter->data), - connection); + connection, &add_error); + if (!success && add_error) + g_error_free (add_error); + } g_object_unref (connection); @@ -491,3 +501,4 @@ impl_settings_add_connection (NMSysconfigSettings *self, return TRUE; } } + diff --git a/system-settings/src/nm-system-config-interface.c b/system-settings/src/nm-system-config-interface.c index e868bf7fac..3b73730601 100644 --- a/system-settings/src/nm-system-config-interface.c +++ b/system-settings/src/nm-system-config-interface.c @@ -1,4 +1,4 @@ -/* -*- Mode: C; tab-width: 5; indent-tabs-mode: t; c-basic-offset: 5 -*- */ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */ /* NetworkManager -- Network link manager * * Dan Williams <dcbw@redhat.com> @@ -139,7 +139,8 @@ nm_system_config_interface_supports_add (NMSystemConfigInterface *config) gboolean nm_system_config_interface_add_connection (NMSystemConfigInterface *config, - NMConnection *connection) + NMConnection *connection, + GError **error) { gboolean success = FALSE; @@ -147,7 +148,7 @@ nm_system_config_interface_add_connection (NMSystemConfigInterface *config, g_return_val_if_fail (NM_IS_CONNECTION (connection), FALSE); if (NM_SYSTEM_CONFIG_INTERFACE_GET_INTERFACE (config)->add_connection) - success = NM_SYSTEM_CONFIG_INTERFACE_GET_INTERFACE (config)->add_connection (config, connection); + success = NM_SYSTEM_CONFIG_INTERFACE_GET_INTERFACE (config)->add_connection (config, connection, error); return success; } diff --git a/system-settings/src/nm-system-config-interface.h b/system-settings/src/nm-system-config-interface.h index 62306bcda6..4a258e3e99 100644 --- a/system-settings/src/nm-system-config-interface.h +++ b/system-settings/src/nm-system-config-interface.h @@ -60,12 +60,14 @@ GObject * nm_system_config_factory (void); #define NM_SYSTEM_CONFIG_INTERFACE_NAME "name" #define NM_SYSTEM_CONFIG_INTERFACE_INFO "info" +#define NM_SYSTEM_CONFIG_INTERFACE_HOSTNAME "hostname" typedef enum { NM_SYSTEM_CONFIG_INTERFACE_PROP_FIRST = 0x1000, NM_SYSTEM_CONFIG_INTERFACE_PROP_NAME = NM_SYSTEM_CONFIG_INTERFACE_PROP_FIRST, NM_SYSTEM_CONFIG_INTERFACE_PROP_INFO, + NM_SYSTEM_CONFIG_INTERFACE_PROP_HOSTNAME, } NMSystemConfigInterfaceProp; @@ -92,7 +94,7 @@ struct _NMSystemConfigInterface { /* * Add a new connection. */ - gboolean (*add_connection) (NMSystemConfigInterface *config, NMConnection *connection); + gboolean (*add_connection) (NMSystemConfigInterface *config, NMConnection *connection, GError **error); /* Signals */ @@ -115,7 +117,8 @@ GSList *nm_system_config_interface_get_unmanaged_devices (NMSystemConfigInterfac gboolean nm_system_config_interface_supports_add (NMSystemConfigInterface *config); gboolean nm_system_config_interface_add_connection (NMSystemConfigInterface *config, - NMConnection *connection); + NMConnection *connection, + GError **error); G_END_DECLS |