summaryrefslogtreecommitdiff
path: root/libnm-glib/nm-ip4-config.c
diff options
context:
space:
mode:
authorTambet Ingo <tambet@ximian.com>2007-02-16 11:23:49 +0000
committerTambet Ingo <tambet@gmail.com>2007-02-16 11:23:49 +0000
commitc40051389cccf8171a26938db7c167b9ca0010cf (patch)
tree387d614ac1e9e04dc2034f852af875757950e6d8 /libnm-glib/nm-ip4-config.c
parent333f46827183b47d3d8b17a3453c9d55fb10f267 (diff)
downloadNetworkManager-c40051389cccf8171a26938db7c167b9ca0010cf.tar.gz
2007-02-16 Tambet Ingo <tambet@ximian.com>
* introspection/nm-ip4-config.xml: Implement. * libnm-glib/libnm-glib-test.c: Use new DBUS API in tests. * libnm-glib/nm-ip4-config.c: * libnm-glib/nm-ip4-config.c: Implement. * src/nm-ap-security[-*]: Remove circular dependencies between APs and AP securities. APs reference security. * src/nm-device-802-11-wireless.c: Implement missing properties that need to be exported over DBUS. * src/nm-device-802-3-ethernet.c: Ditto. * src/NetworkManagerAP.c: * src/NetworkManagerAP.h: - Convert to GObject, export over DBUS. * src/nm-ip4-config.h: * src/nm-ip4-config.h: - Convert to GObject, export over DBUS. git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2322 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Diffstat (limited to 'libnm-glib/nm-ip4-config.c')
-rw-r--r--libnm-glib/nm-ip4-config.c183
1 files changed, 183 insertions, 0 deletions
diff --git a/libnm-glib/nm-ip4-config.c b/libnm-glib/nm-ip4-config.c
new file mode 100644
index 0000000000..68f99f6915
--- /dev/null
+++ b/libnm-glib/nm-ip4-config.c
@@ -0,0 +1,183 @@
+#include "nm-ip4-config.h"
+#include "nm-device-private.h"
+#include "nm-utils.h"
+
+
+G_DEFINE_TYPE (NMIP4Config, nm_ip4_config, DBUS_TYPE_G_PROXY)
+
+static void
+nm_ip4_config_init (NMIP4Config *config)
+{
+}
+
+static void
+nm_ip4_config_class_init (NMIP4ConfigClass *config_class)
+{
+}
+
+#define INTERFACE NM_DBUS_INTERFACE ".IP4Config"
+
+NMIP4Config *
+nm_ip4_config_new (DBusGConnection *connection, const char *object_path)
+{
+ return (NMIP4Config *) g_object_new (NM_TYPE_IP4_CONFIG,
+ "name", NM_DBUS_SERVICE,
+ "path", object_path,
+ "interface", INTERFACE,
+ "connection", connection,
+ NULL);
+}
+
+guint32
+nm_ip4_config_get_address (NMIP4Config *config)
+{
+ guint32 address = 0;
+ GValue value = {0,};
+
+ g_return_val_if_fail (NM_IS_IP4_CONFIG (config), 0);
+
+ if (nm_dbus_get_property (DBUS_G_PROXY (config),
+ INTERFACE,
+ "Address",
+ &value))
+ address = g_value_get_uint (&value);
+
+ return address;
+}
+
+guint32
+nm_ip4_config_get_gateway (NMIP4Config *config)
+{
+ guint32 gateway = 0;
+ GValue value = {0,};
+
+ g_return_val_if_fail (NM_IS_IP4_CONFIG (config), 0);
+
+ if (nm_dbus_get_property (DBUS_G_PROXY (config),
+ INTERFACE,
+ "Gateway",
+ &value))
+ gateway = g_value_get_uint (&value);
+
+ return gateway;
+}
+
+guint32
+nm_ip4_config_get_netmask (NMIP4Config *config)
+{
+ guint32 netmask = 0;
+ GValue value = {0,};
+
+ g_return_val_if_fail (NM_IS_IP4_CONFIG (config), 0);
+
+ if (nm_dbus_get_property (DBUS_G_PROXY (config),
+ INTERFACE,
+ "Netmask",
+ &value))
+ netmask = g_value_get_uint (&value);
+
+ return netmask;
+}
+
+guint32
+nm_ip4_config_get_broadcast (NMIP4Config *config)
+{
+ guint32 broadcast = 0;
+ GValue value = {0,};
+
+ g_return_val_if_fail (NM_IS_IP4_CONFIG (config), 0);
+
+ if (nm_dbus_get_property (DBUS_G_PROXY (config),
+ INTERFACE,
+ "Broadcast",
+ &value))
+ broadcast = g_value_get_uint (&value);
+
+ return broadcast;
+}
+
+char *
+nm_ip4_config_get_hostname (NMIP4Config *config)
+{
+ char *address = NULL;
+ GValue value = {0,};
+
+ g_return_val_if_fail (NM_IS_IP4_CONFIG (config), NULL);
+
+ if (nm_dbus_get_property (DBUS_G_PROXY (config),
+ INTERFACE,
+ "Hostname",
+ &value))
+ address = g_strdup (g_value_get_string (&value));
+
+ return address;
+}
+
+GArray *
+nm_ip4_config_get_nameservers (NMIP4Config *config)
+{
+ GArray *array = NULL;
+ GValue value = {0,};
+
+ g_return_val_if_fail (NM_IS_IP4_CONFIG (config), NULL);
+
+ if (nm_dbus_get_property (DBUS_G_PROXY (config),
+ INTERFACE,
+ "Nameservers",
+ &value))
+ array = (GArray *) g_value_get_boxed (&value);
+
+ return array;
+}
+
+
+char **
+nm_ip4_config_get_domains (NMIP4Config *config)
+{
+ char **array = NULL;
+ GValue value = {0,};
+
+ g_return_val_if_fail (NM_IS_IP4_CONFIG (config), NULL);
+
+ if (nm_dbus_get_property (DBUS_G_PROXY (config),
+ INTERFACE,
+ "Domains",
+ &value))
+ array = (char **) g_value_get_boxed (&value);
+
+ return array;
+}
+
+char *
+nm_ip4_config_get_nis_domain (NMIP4Config *config)
+{
+ char *address = NULL;
+ GValue value = {0,};
+
+ g_return_val_if_fail (NM_IS_IP4_CONFIG (config), NULL);
+
+ if (nm_dbus_get_property (DBUS_G_PROXY (config),
+ INTERFACE,
+ "NisDomain",
+ &value))
+ address = g_strdup (g_value_get_string (&value));
+
+ return address;
+}
+
+GArray *
+nm_ip4_config_get_nis_servers (NMIP4Config *config)
+{
+ GArray *array = NULL;
+ GValue value = {0,};
+
+ g_return_val_if_fail (NM_IS_IP4_CONFIG (config), NULL);
+
+ if (nm_dbus_get_property (DBUS_G_PROXY (config),
+ INTERFACE,
+ "NisServers",
+ &value))
+ array = (GArray *) g_value_get_boxed (&value);
+
+ return array;
+}