From 29e7e9ee95028f2fa170d5f03eac3a3874c68ffd Mon Sep 17 00:00:00 2001 From: Johan Hedberg Date: Fri, 10 Oct 2014 15:22:51 +0300 Subject: [PATCH] core: Ignore adapters without needed transport support --- src/adapter.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/adapter.c b/src/adapter.c index 4e28c6173..1a7d4eb39 100644 --- a/src/adapter.c +++ b/src/adapter.c @@ -6931,6 +6931,11 @@ static void read_info_complete(uint8_t status, uint16_t length, set_mode(adapter, MGMT_OP_SET_BREDR, 0x01); break; case BT_MODE_BREDR: + if (!(adapter->supported_settings & MGMT_SETTING_BREDR)) { + error("Ignoring adapter withouth BR/EDR support"); + goto failed; + } + if (missing_settings & MGMT_SETTING_SSP) set_mode(adapter, MGMT_OP_SET_SSP, 0x01); if (missing_settings & MGMT_SETTING_BREDR) @@ -6939,6 +6944,11 @@ static void read_info_complete(uint8_t status, uint16_t length, set_mode(adapter, MGMT_OP_SET_LE, 0x00); break; case BT_MODE_LE: + if (!(adapter->supported_settings & MGMT_SETTING_LE)) { + error("Ignoring adapter withouth LE support"); + goto failed; + } + if (missing_settings & MGMT_SETTING_LE) set_mode(adapter, MGMT_OP_SET_LE, 0x01); if (adapter->current_settings & MGMT_SETTING_BREDR) -- 2.47.3