summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2005-04-17 23:34:20 +0000
committerMarcel Holtmann <marcel@holtmann.org>2005-04-17 23:34:20 +0000
commitc3881e06e2262909d8e1c190622002c5e02d724f (patch)
treea433b6c9a600d276acb6c1b097ace5ba0164d0ba
parent096a5b39b0956d1a2ef02ceda6015b4c4edb59c4 (diff)
Check the number of pages for extended features
-rw-r--r--tools/hcitool.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/tools/hcitool.c b/tools/hcitool.c
index 6da3d3c1..e02cb93f 100644
--- a/tools/hcitool.c
+++ b/tools/hcitool.c
@@ -456,10 +456,9 @@ static void cmd_scan(int dev_id, int argc, char **argv)
{
inquiry_info *info = NULL;
int num_rsp, length, flags;
- uint8_t cls[3];
+ uint8_t cls[3], features[8];
uint16_t handle;
char addr[18], name[249], oui[9], *comp;
- unsigned char features[8];
struct hci_version version;
struct hci_dev_info di;
struct hci_conn_info_req *cr;
@@ -728,8 +727,8 @@ static void cmd_info(int dev_id, int argc, char **argv)
{
bdaddr_t bdaddr;
uint16_t handle;
+ uint8_t max_page, features[8];
char name[249], oui[9], *comp;
- unsigned char features[8];
struct hci_version version;
struct hci_dev_info di;
struct hci_conn_info_req *cr;
@@ -826,6 +825,12 @@ static void cmd_info(int dev_id, int argc, char **argv)
lmp_featurestostr(features, "\t\t", 63));
}
+ if (features[7] & 0x80) {
+ if (hci_read_remote_ext_features(dd, handle, 0, &max_page, features, 20000) == 0)
+ if (max_page > 0)
+ printf("\tExtended features: %d pages\n", max_page);
+ }
+
if (cc) {
usleep(10000);
hci_disconnect(dd, handle, HCI_OE_USER_ENDED_CONNECTION, 10000);