diff options
Diffstat (limited to 'hcid/dbus-service.c')
-rw-r--r-- | hcid/dbus-service.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/hcid/dbus-service.c b/hcid/dbus-service.c index 32077f7d..b4c5aa6d 100644 --- a/hcid/dbus-service.c +++ b/hcid/dbus-service.c @@ -507,7 +507,10 @@ static DBusHandlerResult msg_func_services(DBusConnection *conn, iface = dbus_message_get_interface(msg); - if (strcmp("org.bluez.Service", iface) == 0) { + if (!strcmp(DBUS_INTERFACE_INTROSPECTABLE, iface) && + !strcmp("Introspect", dbus_message_get_member(msg))) { + return simple_introspect(conn, msg, data); + } else if (strcmp("org.bluez.Service", iface) == 0) { handler = find_service_handler(services_methods, msg); if (handler) @@ -541,7 +544,7 @@ static DBusHandlerResult msg_func_services(DBusConnection *conn, } else if (strcmp("org.bluez.Security", iface) == 0) return handle_security_method(conn, msg, data); else - return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; + return error_unknown_method(conn, msg); } static const DBusObjectPathVTable services_vtable = { |