mbed-os/features/FEATURE_BLE/source
Nic Costa c5edbe05b0 Fix race condition when generating OOB data
The GenericSecurityManager tracks the most recent OOB data generated
by the PAL and the PAL function to generate OOB data is expected to
be asynchronous such that the OOB data is returned via a callback.

There was a race condition on the security manager's oob data variable
because it was cleared (set to all zeros) after calling PAL generate.
The expectation was that the clear operation would occur before the
callback executed, but this is proving to not be the case.  Instead,
the callback is being executed as if it were syncronous with PAL
generate, then PAL generate returns and the oob data is cleared,
thereby losing the generated oob data that was set in the callback.

To fix the issue, clear the oob data variables before calling into
the PAL.
2019-01-25 14:29:59 +00:00
..
gap BLE: Change parameter order of ble::Gap::startScan 2018-12-05 11:09:50 +00:00
generic Fix race condition when generating OOB data 2019-01-25 14:29:59 +00:00
services Move ARMmbed/feature/FEATURE_BLE into mbedmicro/mbed. 2016-07-20 22:10:36 +01:00
BLE.cpp BLE: Update toolchain.h with mbed_toolchain.h 2018-12-27 22:25:59 -06:00
BLEInstanceBase.cpp Move ARMmbed/feature/FEATURE_BLE into mbedmicro/mbed. 2016-07-20 22:10:36 +01:00
DiscoveredCharacteristic.cpp Move ARMmbed/feature/FEATURE_BLE into mbedmicro/mbed. 2016-07-20 22:10:36 +01:00
GapScanningParams.cpp BLE: revert GapScanningParams 2018-11-26 10:24:31 +00:00
LegacyGap.cpp BLE: Move source/Gap.cpp -> source/LegacyGap.cpp 2018-11-27 09:12:28 +00:00