summaryrefslogtreecommitdiffstats
path: root/hcid/dbus-adapter.c
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2006-06-06 18:02:21 +0000
committerMarcel Holtmann <marcel@holtmann.org>2006-06-06 18:02:21 +0000
commit253d30d4f95eb6d896531a5bfb570e7d1bb1ca0c (patch)
tree4900aa3508b1c7513784186ac374bcc8ec01f489 /hcid/dbus-adapter.c
parenta2e87ebea964817c620cef7cb0c70cdd0982232c (diff)
Add simple introspection support
Diffstat (limited to 'hcid/dbus-adapter.c')
-rw-r--r--hcid/dbus-adapter.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/hcid/dbus-adapter.c b/hcid/dbus-adapter.c
index 1d1b7762..a5f7147c 100644
--- a/hcid/dbus-adapter.c
+++ b/hcid/dbus-adapter.c
@@ -2257,11 +2257,15 @@ static struct service_data dev_services[] = {
DBusHandlerResult msg_func_device(DBusConnection *conn, DBusMessage *msg, void *data)
{
- const char *iface;
+ const char *iface, *name;
iface = dbus_message_get_interface(msg);
+ name = dbus_message_get_member(msg);
- if (!strcmp(ADAPTER_INTERFACE, iface)) {
+ if (!strcmp(DBUS_INTERFACE_INTROSPECTABLE, iface) &&
+ !strcmp("Introspect", name)) {
+ return simple_introspect(conn, msg, data);
+ } else if (!strcmp(ADAPTER_INTERFACE, iface)) {
service_handler_func_t handler;
handler = find_service_handler(dev_services, msg);