From 6a3f7979de00988fd66e586097efc5de577f0436 Mon Sep 17 00:00:00 2001 From: Vinicius Gomes Date: Thu, 20 Mar 2008 14:19:46 +0000 Subject: adapter: adding adapter_get_device function --- hcid/adapter.c | 18 ++++++++++++++++++ hcid/adapter.h | 2 ++ 2 files changed, 20 insertions(+) diff --git a/hcid/adapter.c b/hcid/adapter.c index b18b054f..4b1bc0eb 100644 --- a/hcid/adapter.c +++ b/hcid/adapter.c @@ -2130,6 +2130,24 @@ static void create_device_req_free(struct create_device_req *create) create = NULL; } +struct device *adapter_get_device(struct adapter *adapter, const char *src) +{ + struct device *device; + GSList *l; + + if (!adapter) + return NULL; + + l = g_slist_find_custom(adapter->devices, + src, (GCompareFunc) device_address_cmp); + if (!l) + return NULL; + + device = l->data; + + return device; +} + static gboolean create_bonding_conn_complete(GIOChannel *io, GIOCondition cond, struct adapter *adapter) { diff --git a/hcid/adapter.h b/hcid/adapter.h index d64930bc..0ab02c77 100644 --- a/hcid/adapter.h +++ b/hcid/adapter.h @@ -113,6 +113,8 @@ struct adapter { dbus_bool_t adapter_init(DBusConnection *conn, const char *path); +struct device *adapter_get_device(struct adapter *adapter, const char *src); + const char *major_class_str(uint32_t class); const char *minor_class_str(uint32_t class); -- cgit