Bluetooth: Don't advertise high speed support without SSP
It is not allowed to enable high speed support when Secure Simple Pairing is not available or disabled. However the support for high speed gets advertised on a controller that does not even support Secure Simple Pairing. Since there is no way to enable high speed support on such a controller, do not even advertise its support. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Change-Id: I31a94ba5e41f4e45b32b2ca5db6a17f24688f711 [CV: backported to 3.10] Signed-off-by: Corinna Vinschen <xda@vinschen.de>
This commit is contained in:
parent
732346770e
commit
c1d0d1a3b0
|
@ -378,9 +378,6 @@ static u32 get_supported_settings(struct hci_dev *hdev)
|
|||
settings |= MGMT_SETTING_POWERED;
|
||||
settings |= MGMT_SETTING_PAIRABLE;
|
||||
|
||||
if (lmp_ssp_capable(hdev))
|
||||
settings |= MGMT_SETTING_SSP;
|
||||
|
||||
if (lmp_bredr_capable(hdev)) {
|
||||
settings |= MGMT_SETTING_CONNECTABLE;
|
||||
if (hdev->hci_ver >= BLUETOOTH_VER_1_2)
|
||||
|
@ -388,10 +385,14 @@ static u32 get_supported_settings(struct hci_dev *hdev)
|
|||
settings |= MGMT_SETTING_DISCOVERABLE;
|
||||
settings |= MGMT_SETTING_BREDR;
|
||||
settings |= MGMT_SETTING_LINK_SECURITY;
|
||||
|
||||
if (lmp_ssp_capable(hdev)) {
|
||||
settings |= MGMT_SETTING_SSP;
|
||||
if (enable_hs)
|
||||
settings |= MGMT_SETTING_HS;
|
||||
}
|
||||
}
|
||||
|
||||
if (enable_hs)
|
||||
settings |= MGMT_SETTING_HS;
|
||||
|
||||
if (lmp_le_capable(hdev))
|
||||
settings |= MGMT_SETTING_LE;
|
||||
|
|
Loading…
Reference in New Issue