dundee: Watch for signals only on DUNDEE_SERVICE
[framework/connectivity/connman.git] / gsupplicant / dbus.h
index 254b93e..dfe77fe 100644 (file)
@@ -2,7 +2,7 @@
  *
  *  WPA supplicant library with GLib integration
  *
- *  Copyright (C) 2010  Intel Corporation. All rights reserved.
+ *  Copyright (C) 2012  Intel Corporation. All rights reserved.
  *
  *  This program is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License version 2 as
@@ -37,6 +37,11 @@ typedef void (*supplicant_dbus_setup_function) (DBusMessageIter *iter,
 typedef void (*supplicant_dbus_result_function) (const char *error,
                                DBusMessageIter *iter, void *user_data);
 
+void supplicant_dbus_property_append_array(DBusMessageIter *iter,
+                               const char *key, int type,
+                               supplicant_dbus_array_function function,
+                               void *user_data);
+
 void supplicant_dbus_setup(DBusConnection *conn);
 
 void supplicant_dbus_array_foreach(DBusMessageIter *iter,
@@ -51,6 +56,11 @@ int supplicant_dbus_property_get_all(const char *path, const char *interface,
                                supplicant_dbus_property_function function,
                                                        void *user_data);
 
+int supplicant_dbus_property_get(const char *path, const char *interface,
+                               const char *method,
+                               supplicant_dbus_property_function function,
+                                                       void *user_data);
+
 int supplicant_dbus_property_set(const char *path, const char *interface,
                                const char *key, const char *signature,
                                supplicant_dbus_setup_function setup,
@@ -106,3 +116,18 @@ supplicant_dbus_dict_append_fixed_array(DBusMessageIter *dict,
        supplicant_dbus_property_append_fixed_array(&entry, key, type, val, len);
        dbus_message_iter_close_container(dict, &entry);
 }
+
+static inline void
+supplicant_dbus_dict_append_array(DBusMessageIter *dict,
+                               const char *key, int type,
+                               supplicant_dbus_array_function function,
+                               void *user_data)
+{
+       DBusMessageIter entry;
+
+       dbus_message_iter_open_container(dict, DBUS_TYPE_DICT_ENTRY,
+                                                               NULL, &entry);
+       supplicant_dbus_property_append_array(&entry, key, type,
+                                               function, user_data);
+       dbus_message_iter_close_container(dict, &entry);
+}