diff options
author | Alok Barsode <alok.barsode@azingo.com> | 2008-09-03 12:49:59 +0530 |
---|---|---|
committer | Alok Barsode <alok.barsode@azingo.com> | 2008-09-03 12:49:59 +0530 |
commit | bcb5f7e4d5e570c1acfd5364547d36e970408394 (patch) | |
tree | 11c1b2400ba1150dfc302744b7ad091ca58c2cda /src/device.c | |
parent | 26c84ba158a898984d8678f6493a7d3b00717198 (diff) |
Adding adapter_search_active_conn_by_bdaddr and
adapter_search_active_conn_by_handle.
Diffstat (limited to 'src/device.c')
-rw-r--r-- | src/device.c | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/src/device.c b/src/device.c index b41c6ff5..5ebbdbc6 100644 --- a/src/device.c +++ b/src/device.c @@ -152,6 +152,7 @@ static DBusMessage *get_properties(DBusConnection *conn, uint32_t class; int i; GSList *l; + struct active_conn_info *dev; reply = dbus_message_new_method_return(msg); if (!reply) @@ -207,8 +208,8 @@ static DBusMessage *get_properties(DBusConnection *conn, DBUS_TYPE_BOOLEAN, &boolean); /* Connected */ - if (g_slist_find_custom(adapter->active_conn, &dst, - active_conn_find_by_bdaddr)) + dev = adapter_search_active_conn_by_bdaddr(adapter, &dst); + if (dev) boolean = TRUE; else boolean = FALSE; @@ -408,7 +409,6 @@ static gboolean disconnect_timeout(gpointer user_data) { struct btd_device *device = user_data; struct active_conn_info *ci; - GSList *l; disconnect_cp cp; bdaddr_t bda; int dd; @@ -417,12 +417,12 @@ static gboolean disconnect_timeout(gpointer user_data) device->disconn_timer = 0; str2ba(device->address, &bda); - l = g_slist_find_custom(device->adapter->active_conn, - &bda, active_conn_find_by_bdaddr); - if (!l) + + ci = adapter_search_active_conn_by_bdaddr(device->adapter, &bda); + + if (!ci) return FALSE; - ci = l->data; dd = hci_open_dev(dev_id); if (dd < 0) goto fail; @@ -444,13 +444,14 @@ static DBusMessage *disconnect(DBusConnection *conn, DBusMessage *msg, void *user_data) { struct btd_device *device = user_data; - GSList *l; bdaddr_t bda; + struct active_conn_info *dev; str2ba(device->address, &bda); - l = g_slist_find_custom(device->adapter->active_conn, - &bda, active_conn_find_by_bdaddr); - if (!l) + + dev = adapter_search_active_conn_by_bdaddr(device->adapter, &bda); + + if (!dev) return g_dbus_create_error(msg, ERROR_INTERFACE ".NotConnected", "Device is not connected"); |