diff options
Diffstat (limited to 'tools/hciconfig.c')
-rw-r--r-- | tools/hciconfig.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/tools/hciconfig.c b/tools/hciconfig.c index 1cc698d8..d8c40e8f 100644 --- a/tools/hciconfig.c +++ b/tools/hciconfig.c @@ -75,6 +75,12 @@ static void print_dev_list(int ctl, int flags) di.dev_id = (dr+i)->dev_id; if (ioctl(ctl, HCIGETDEVINFO, (void *) &di) < 0) continue; + if (hci_test_bit(HCI_RAW, &di.flags) && + !bacmp(&di.bdaddr, BDADDR_ANY)) { + int dd = hci_open_dev(di.dev_id); + hci_read_bd_addr(dd, &di.bdaddr, 1000); + hci_close_dev(dd); + } print_dev_info(ctl, &di); } } @@ -1217,6 +1223,13 @@ int main(int argc, char **argv, char **env) exit(1); } + if (hci_test_bit(HCI_RAW, &di.flags) && + !bacmp(&di.bdaddr, BDADDR_ANY)) { + int dd = hci_open_dev(di.dev_id); + hci_read_bd_addr(dd, &di.bdaddr, 1000); + hci_close_dev(dd); + } + while (argc > 0) { for (i = 0; command[i].cmd; i++) { if (strncmp(command[i].cmd, *argv, 5)) |