From 978117747f07ac8bb5fb59e3407b8e0be4519273 Mon Sep 17 00:00:00 2001 From: Marcel Holtmann Date: Wed, 1 Nov 2006 17:31:22 +0000 Subject: Fix SDP service record registration --- hcid/service-agent.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/hcid/service-agent.c b/hcid/service-agent.c index c6e37d8e..9f8744dd 100644 --- a/hcid/service-agent.c +++ b/hcid/service-agent.c @@ -180,7 +180,7 @@ static const DBusObjectPathVTable service_table = { .message_function = service_message, }; -static int register_record(DBusConnection *conn, const char *service_path) +static int add_record(DBusConnection *conn, const char *service_path) { DBusMessage *msg, *reply; DBusMessageIter iter, array_iter; @@ -201,13 +201,16 @@ static int register_record(DBusConnection *conn, const char *service_path) 0x6f, 0x72, 0x74 }; int i; - msg = dbus_message_new_method_call("org.bluez", service_path, - "org.bluez.Service", "RegisterServiceRecord"); + msg = dbus_message_new_method_call("org.bluez", "/org/bluez", + INTERFACE, "AddServiceRecord"); if (!msg) { fprintf(stderr, "Can't allocate new method call\n"); return -1; } + dbus_message_append_args(msg, DBUS_TYPE_STRING, &service_path, + DBUS_TYPE_INVALID); + dbus_message_iter_init_append(msg, &iter); dbus_message_iter_open_container(&iter, DBUS_TYPE_ARRAY, @@ -283,7 +286,7 @@ static int register_service(DBusConnection *conn, const char *service_path) dbus_connection_flush(conn); - return register_record(conn, service_path); + return add_record(conn, service_path); } static int unregister_service(DBusConnection *conn, const char *service_path) -- cgit