summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Williams <dcbw@redhat.com>2010-02-17 01:51:07 -0800
committerDan Williams <dcbw@redhat.com>2010-02-17 01:51:07 -0800
commit8564371cc6f260bd7e566818f722e363988b6a5e (patch)
tree47ad02e74f50281101bdd2ebe8dc523f520cd32e
parent048bdb63ea2590f62f13709c9d816be3096927c2 (diff)
downloadNetworkManager-8564371cc6f260bd7e566818f722e363988b6a5e.tar.gz
system-settings: register setting errors so D-Bus errors are meaningful
The errors weren't registered with dbus-glib yet for some reason, so errors returned when adding invalid connections or updating or whatever weren't meaningful at all. We register them in the system settings service (and not libnm-util) becuase libnm-util doesn't really have anything to do wtih D-Bus, so we put the error registration with the code that exports the connections over the bus.
-rw-r--r--system-settings/src/dbus-settings.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/system-settings/src/dbus-settings.c b/system-settings/src/dbus-settings.c
index 9fa9c58a3d..0890f39bd9 100644
--- a/system-settings/src/dbus-settings.c
+++ b/system-settings/src/dbus-settings.c
@@ -29,7 +29,20 @@
#include <NetworkManager.h>
#include <nm-connection.h>
#include <dbus/dbus.h>
+
+#include <nm-setting-8021x.h>
+#include <nm-setting-cdma.h>
#include <nm-setting-connection.h>
+#include <nm-setting-gsm.h>
+#include <nm-setting-ip4-config.h>
+#include <nm-setting-olpc-mesh.h>
+#include <nm-setting-ppp.h>
+#include <nm-setting-pppoe.h>
+#include <nm-setting-serial.h>
+#include <nm-setting-vpn.h>
+#include <nm-setting-wired.h>
+#include <nm-setting-wireless.h>
+#include <nm-setting-wireless-security.h>
#include "nm-dbus-glib-types.h"
#include "dbus-settings.h"
@@ -348,6 +361,22 @@ nm_sysconfig_settings_class_init (NMSysconfigSettingsClass *class)
dbus_g_error_domain_register (NM_SYSCONFIG_SETTINGS_ERROR,
NM_DBUS_IFACE_SETTINGS_SYSTEM,
NM_TYPE_SYSCONFIG_SETTINGS_ERROR);
+
+ /* And register all the settings errors with D-Bus */
+ dbus_g_error_domain_register (NM_SETTING_802_1X_ERROR, NULL, NM_TYPE_SETTING_802_1X_ERROR);
+ dbus_g_error_domain_register (NM_SETTING_CDMA_ERROR, NULL, NM_TYPE_SETTING_CDMA_ERROR);
+ dbus_g_error_domain_register (NM_SETTING_CONNECTION_ERROR, NULL, NM_TYPE_SETTING_CONNECTION_ERROR);
+ dbus_g_error_domain_register (NM_SETTING_GSM_ERROR, NULL, NM_TYPE_SETTING_GSM_ERROR);
+ dbus_g_error_domain_register (NM_SETTING_IP4_CONFIG_ERROR, NULL, NM_TYPE_SETTING_IP4_CONFIG_ERROR);
+ dbus_g_error_domain_register (NM_SETTING_OLPC_MESH_ERROR, NULL, NM_TYPE_SETTING_OLPC_MESH_ERROR);
+ dbus_g_error_domain_register (NM_SETTING_PPP_ERROR, NULL, NM_TYPE_SETTING_PPP_ERROR);
+ dbus_g_error_domain_register (NM_SETTING_PPPOE_ERROR, NULL, NM_TYPE_SETTING_PPPOE_ERROR);
+ dbus_g_error_domain_register (NM_SETTING_SERIAL_ERROR, NULL, NM_TYPE_SETTING_SERIAL_ERROR);
+ dbus_g_error_domain_register (NM_SETTING_VPN_ERROR, NULL, NM_TYPE_SETTING_VPN_ERROR);
+ dbus_g_error_domain_register (NM_SETTING_WIRED_ERROR, NULL, NM_TYPE_SETTING_WIRED_ERROR);
+ dbus_g_error_domain_register (NM_SETTING_WIRELESS_SECURITY_ERROR, NULL, NM_TYPE_SETTING_WIRELESS_SECURITY_ERROR);
+ dbus_g_error_domain_register (NM_SETTING_WIRELESS_ERROR, NULL, NM_TYPE_SETTING_WIRELESS_ERROR);
+ dbus_g_error_domain_register (NM_SETTING_ERROR, NULL, NM_TYPE_SETTING_ERROR);
}
static void