summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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);