summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaulo Borges <paulo.borges@openbossa.org>2013-03-01 18:58:59 -0300
committerDenis Kenzior <denkenz@gmail.com>2013-03-04 12:04:54 -0600
commit08eea76ea88687e532f724518ff36b2b4f40f988 (patch)
tree79341a224445bf2a49916db1ddd0eca0d267e623
parent4fcd08485960f6294ba659926cdbd94d13e1250e (diff)
downloadofono-08eea76ea88687e532f724518ff36b2b4f40f988.tar.bz2
bluez5: Add bt_register_profile_with_role
This function allows to specify which role is registering when the profile does not have specific UUIDs for each role.
-rw-r--r--plugins/bluez5.c15
-rw-r--r--plugins/bluez5.h4
2 files changed, 17 insertions, 2 deletions
diff --git a/plugins/bluez5.c b/plugins/bluez5.c
index 9233a2b2..7cc11fd9 100644
--- a/plugins/bluez5.c
+++ b/plugins/bluez5.c
@@ -107,9 +107,9 @@ done:
dbus_message_unref(reply);
}
-int bt_register_profile(DBusConnection *conn, const char *uuid,
+int bt_register_profile_with_role(DBusConnection *conn, const char *uuid,
uint16_t version, const char *name,
- const char *object)
+ const char *object, const char *role)
{
DBusMessageIter iter, dict;
DBusPendingCall *c;
@@ -128,6 +128,9 @@ int bt_register_profile(DBusConnection *conn, const char *uuid,
ofono_dbus_dict_append(&dict, "Name", DBUS_TYPE_STRING, &name);
ofono_dbus_dict_append(&dict, "Version", DBUS_TYPE_UINT16, &version);
+ if (role)
+ ofono_dbus_dict_append(&dict, "Role", DBUS_TYPE_STRING, &role);
+
dbus_message_iter_close_container(&iter, &dict);
if (!dbus_connection_send_with_reply(conn, msg, &c, -1)) {
@@ -144,6 +147,14 @@ int bt_register_profile(DBusConnection *conn, const char *uuid,
return 0;
}
+int bt_register_profile(DBusConnection *conn, const char *uuid,
+ uint16_t version, const char *name,
+ const char *object)
+{
+ return bt_register_profile_with_role(conn, uuid, version, name, object,
+ NULL);
+}
+
void bt_unregister_profile(DBusConnection *conn, const char *object)
{
DBusMessageIter iter;
diff --git a/plugins/bluez5.h b/plugins/bluez5.h
index 1432068e..f7f3d7e1 100644
--- a/plugins/bluez5.h
+++ b/plugins/bluez5.h
@@ -69,6 +69,10 @@ int bt_ba2str(const bdaddr_t *ba, char *str);
int bt_bacmp(const bdaddr_t *ba1, const bdaddr_t *ba2);
+int bt_register_profile_with_role(DBusConnection *conn, const char *uuid,
+ uint16_t version, const char *name,
+ const char *object, const char *role);
+
int bt_register_profile(DBusConnection *conn, const char *uuid,
uint16_t version, const char *name,
const char *object);