diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2009-12-19 14:51:10 -0800 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2009-12-19 14:51:10 -0800 |
commit | 9906db093ef4156a97bbb0d82e2666b34563af29 (patch) | |
tree | 5390a62f03460d61bbab3549b93ae448eadb3960 /src/network.c | |
parent | f5b31a03d2bdc743510ed96a314e60a9899ac986 (diff) | |
download | connman-9906db093ef4156a97bbb0d82e2666b34563af29.tar.gz connman-9906db093ef4156a97bbb0d82e2666b34563af29.tar.bz2 connman-9906db093ef4156a97bbb0d82e2666b34563af29.zip |
Use D-Bus property helpers for network list details
Diffstat (limited to 'src/network.c')
-rw-r--r-- | src/network.c | 27 |
1 files changed, 7 insertions, 20 deletions
diff --git a/src/network.c b/src/network.c index 138783b9..81be9be7 100644 --- a/src/network.c +++ b/src/network.c @@ -179,41 +179,28 @@ static GDBusSignalTable network_signals[] = { static DBusConnection *connection; -static void append_networks(struct connman_device *device, - DBusMessageIter *entry) +static void append_networks(DBusMessageIter *iter, void *user_data) { - DBusMessageIter value, iter; - const char *key = "Networks"; + struct connman_device *device = user_data; - dbus_message_iter_append_basic(entry, DBUS_TYPE_STRING, &key); - - dbus_message_iter_open_container(entry, DBUS_TYPE_VARIANT, - DBUS_TYPE_ARRAY_AS_STRING DBUS_TYPE_OBJECT_PATH_AS_STRING, - &value); - - dbus_message_iter_open_container(&value, DBUS_TYPE_ARRAY, - DBUS_TYPE_OBJECT_PATH_AS_STRING, &iter); __connman_element_list((struct connman_element *) device, - CONNMAN_ELEMENT_TYPE_NETWORK, &iter); - dbus_message_iter_close_container(&value, &iter); - - dbus_message_iter_close_container(entry, &value); + CONNMAN_ELEMENT_TYPE_NETWORK, iter); } static void emit_networks_signal(struct connman_device *device) { const char *path = connman_device_get_path(device); DBusMessage *signal; - DBusMessageIter entry; + DBusMessageIter iter; signal = dbus_message_new_signal(path, CONNMAN_DEVICE_INTERFACE, "PropertyChanged"); if (signal == NULL) return; - dbus_message_iter_init_append(signal, &entry); - - append_networks(device, &entry); + dbus_message_iter_init_append(signal, &iter); + connman_dbus_property_append_variable_array(&iter, "Networks", + DBUS_TYPE_OBJECT_PATH, append_networks, device); g_dbus_send_message(connection, signal); } |