summaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
Diffstat (limited to 'common')
-rw-r--r--common/glib-helper.c18
-rw-r--r--common/glib-helper.h3
2 files changed, 18 insertions, 3 deletions
diff --git a/common/glib-helper.c b/common/glib-helper.c
index 1812cc6d..17a8cb45 100644
--- a/common/glib-helper.c
+++ b/common/glib-helper.c
@@ -486,7 +486,7 @@ static struct {
{ }
};
-uint16_t bt_string2class(const char *pattern)
+uint16_t bt_name2class(const char *pattern)
{
int i;
@@ -498,6 +498,20 @@ uint16_t bt_string2class(const char *pattern)
return 0;
}
+char *bt_name2string(const char *pattern)
+{
+ uuid_t uuid;
+ uint16_t uuid16;
+
+ uuid16 = bt_name2class(pattern);
+ if (!uuid16)
+ return NULL;
+
+ sdp_uuid16_create(&uuid, uuid16);
+
+ return bt_uuid2string(&uuid);
+}
+
int bt_string2uuid(uuid_t *uuid, const char *string)
{
uint32_t data0, data4;
@@ -530,7 +544,7 @@ int bt_string2uuid(uuid_t *uuid, const char *string)
return 0;
} else {
- uint16_t class = bt_string2class(string);
+ uint16_t class = bt_name2class(string);
if (class) {
sdp_uuid16_create(uuid, class);
return 0;
diff --git a/common/glib-helper.h b/common/glib-helper.h
index ee63b2d7..794d296c 100644
--- a/common/glib-helper.h
+++ b/common/glib-helper.h
@@ -38,7 +38,8 @@ int bt_search_service(const bdaddr_t *src, const bdaddr_t *dst,
int bt_cancel_discovery(const bdaddr_t *src, const bdaddr_t *dst);
gchar *bt_uuid2string(uuid_t *uuid);
-uint16_t bt_string2class(const char *string);
+uint16_t bt_name2class(const char *string);
+char *bt_name2string(const char *string);
int bt_string2uuid(uuid_t *uuid, const char *string);
gchar *bt_list2string(GSList *list);
GSList *bt_string2list(const gchar *str);