summaryrefslogtreecommitdiff
path: root/gdbus/object.c
diff options
context:
space:
mode:
authorRISKÓ Gergely <gergely@risko.hu>2009-09-14 17:52:43 +0300
committerMarcel Holtmann <marcel@holtmann.org>2009-09-14 14:07:37 -0700
commit8babfd4424c8630553cefbb5f8521dcdb5e37bb4 (patch)
tree751ba127389b52295227ae3a5ef63fa388dbebc5 /gdbus/object.c
parent240f87bc4777961b88e247ad333d9cab8da0fd43 (diff)
downloadconnman-8babfd4424c8630553cefbb5f8521dcdb5e37bb4.tar.gz
connman-8babfd4424c8630553cefbb5f8521dcdb5e37bb4.tar.bz2
connman-8babfd4424c8630553cefbb5f8521dcdb5e37bb4.zip
Add introspection interface to the output of introspection calls
This provides better compatibility with some D-Bus clients, such as qdbus.
Diffstat (limited to 'gdbus/object.c')
-rw-r--r--gdbus/object.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/gdbus/object.c b/gdbus/object.c
index 31869218..811c2e16 100644
--- a/gdbus/object.c
+++ b/gdbus/object.c
@@ -155,7 +155,13 @@ static void generate_introspection_xml(DBusConnection *conn,
gstr = g_string_new(DBUS_INTROSPECT_1_0_XML_DOCTYPE_DECL_NODE);
- g_string_append_printf(gstr, "<node name=\"%s\">\n", path);
+ g_string_append_printf(gstr,
+ "<node name=\"%s\">\n"
+ "\t<interface name=\"org.freedesktop.DBus.Introspectable\">\n"
+ "\t\t<method name=\"Introspect\">\n"
+ "\t\t\t<arg name=\"xml_data\" type=\"s\" direction=\"out\"/>\n"
+ "\t\t</method>\n"
+ "\t</interface>\n", path);
for (list = data->interfaces; list; list = list->next) {
struct interface_data *iface = list->data;