diff --git a/src/adapter.c b/src/adapter.c
index 4d3bcba..7e9ceac 100644
--- a/src/adapter.c
+++ b/src/adapter.c
guint scheduler_id; /* Scheduler handle */
sdp_list_t *services; /* Services associated to adapter */
- struct hci_dev dev; /* hci info */
+ uint8_t features[8];
+ uint8_t extfeatures[8];
+
gboolean pairable; /* pairable state */
gboolean initialized;
static gboolean bredr_capable(struct btd_adapter *adapter)
{
- struct hci_dev *dev = &adapter->dev;
-
- return (dev->features[4] & LMP_NO_BREDR) == 0 ? TRUE : FALSE;
+ return (adapter->features[4] & LMP_NO_BREDR) == 0 ? TRUE : FALSE;
}
static gboolean le_capable(struct btd_adapter *adapter)
{
- struct hci_dev *dev = &adapter->dev;
-
- return (dev->features[4] & LMP_LE &&
- dev->extfeatures[0] & LMP_HOST_LE) ? TRUE : FALSE;
+ return (adapter->features[4] & LMP_LE &&
+ adapter->extfeatures[0] & LMP_HOST_LE) ? TRUE : FALSE;
}
int adapter_get_discover_type(struct btd_adapter *adapter)
gboolean adapter_init(struct btd_adapter *adapter)
{
- struct hci_dev *dev;
int err;
/* adapter_ops makes sure that newly registered adapters always
return FALSE;
}
- dev = &adapter->dev;
-
- err = adapter_ops->read_local_features(adapter->dev_id, dev->features);
+ err = adapter_ops->read_local_features(adapter->dev_id,
+ adapter->features);
if (err < 0) {
error("Can't read features for hci%d: %s (%d)",
adapter->dev_id, strerror(-err), -err);
void btd_adapter_update_local_ext_features(struct btd_adapter *adapter,
const uint8_t *features)
{
- struct hci_dev *dev = &adapter->dev;
-
- memcpy(dev->extfeatures, features, 8);
+ memcpy(adapter->extfeatures, features, 8);
}
int btd_adapter_encrypt_link(struct btd_adapter *adapter, bdaddr_t *bdaddr,
diff --git a/src/adapter.h b/src/adapter.h
index ee3cae9..7cc7c02 100644
--- a/src/adapter.h
+++ b/src/adapter.h
uint8_t flags;
};
-struct hci_dev {
- uint8_t features[8];
- uint8_t extfeatures[8];
-
-};
-
void btd_adapter_start(struct btd_adapter *adapter);
int btd_adapter_stop(struct btd_adapter *adapter);