Commit Graph

863 Commits (mbed-os-5.9.5)

Author SHA1 Message Date
paul-szczepanek-arm 37985e5912 factored out whole ediv rand check 2018-08-13 14:44:27 +01:00
paul-szczepanek-arm dbeded5fbb MACRO the size of rand 2018-08-13 14:44:27 +01:00
paul-szczepanek-arm 3bbdf3446d factor out invalid rand function 2018-08-13 14:44:27 +01:00
paul-szczepanek-arm 986c42233f replaced lesc field usage with ediv&rand check 2018-08-13 14:44:27 +01:00
paul-szczepanek-arm de9bb5dde5 call the correct ltk function when SC is used 2018-08-13 14:44:27 +01:00
paul-szczepanek-arm 0dbcf97742 set correct default privacy configuration for centrals 2018-08-13 14:44:27 +01:00
Vincent Coubard a5df9176a9 Nordic BLE: Fix return value verification 2018-06-29 17:10:17 +01:00
Vincent Coubard 2d97c91561 Nordi BLE: Fix formatting 2018-06-29 17:10:17 +01:00
Vincent Coubard 5711b295da Nordic BLE:
Cancel pairing if the device fail to allocate the resources necessary for the pairing operation.
2018-06-29 17:10:17 +01:00
Vincent Coubard 01f5c456f3 Nordic BLE: Fix pairing cancellation.
Depending on the role and the current state of the local device; pairing cancelation should be made with a call to a specific function. Normally the Nordic stack would reject invalid calls if the device is not in the correct state; therefore it was assumed that it was possible to detect the state from sd errors. Unfortunatelly this is not true with the latest softdevices as some calls succeed even if the device is not in the right state.

To solve that issue cancelation looks at the current state of the device first to select the right function that will trigger the pairing cancellation.

Note: the call to sd_ble_gap_authenticate was missing in the previous algorithm
2018-06-29 17:10:17 +01:00
Vincent Coubard e8b783b702 Nordic BLE: Store locally role for a given connection. 2018-06-29 17:10:17 +01:00
Vincent Coubard a6eefdfdcf Nordic BLE: Add default parameter to get the local instance of nrF5xn 2018-06-29 17:10:17 +01:00
Vincent Coubard c4ecbfb796 Nordic BLE: Improve return of nRF5xn::getGap.
Return the derived type instead of the abstract one. This is legal as C++ supports covariant returns.
2018-06-29 17:10:17 +01:00
Kari Haapalehto b955eb7e49 Add binary drivers for MTB_USI_WM_BN_BM_22 and MTB_ADV_WISE_1530 2018-06-29 17:10:17 +01:00
paul-szczepanek-arm a0b20720dd reuse existing call 2018-06-29 17:10:17 +01:00
paul-szczepanek-arm 338a8fc696 use sets to apply limits 2018-06-29 17:10:17 +01:00
paul-szczepanek-arm c17c674c82 add setScanParams overload 2018-06-29 17:10:17 +01:00
Vincent Coubard 8f29bf5b9e Nordic BLE: Accept connection parameter update
A peer device that sends a connection parameter update may get block if it doesn't receive a response.

This patch accept the peer request unconditionnally. At some point this event will be managed by the application.
2018-06-29 17:10:17 +01:00
paul-szczepanek-arm bf6407e3b7 check that flags have the IRK stored before retrieving it 2018-06-15 13:30:56 +01:00
paul-szczepanek-arm d07d966d0f missing return
function would potentially send a reject and accept at the same time
2018-06-15 13:30:56 +01:00
Andrew Leech 5d751dfb8f Move mbed_lib.json from targets folder to feature_ble folder The functionality added all affects BLE features in use so this location is a better fit. 2018-06-15 13:30:56 +01:00
Andrew Leech c0341fa363 Allow configuration (via defines) of some of the key settings for the NRF51 softdevice. * CENTRAL_LINK_COUNT * PERIPHERAL_LINK_COUNT * gatts_enable_params.attr_tab_size * gatts_enable_params.service_changed * common_enable_params.vs_uuid_count
These settings control the range of functionality enabled in the softdevice as well as ram consumption.
In particular reducing these values is critical to enable usage of 16K nrf51 devices.
2018-06-15 13:30:56 +01:00
Andrew Leech 2ba88ba8f6 Redirect NRF asserts to mbed error() in TARGET_NRF5x and SDK 14.2 Add related details to TARGET_NRF5x Readme's 2018-06-15 13:30:56 +01:00
Andrew Leech 97ba13b773 Enable ASSERTS's in nrf sdk to catch coding errors.
These will now flow through to mbed standard error handling.
2018-06-15 13:30:56 +01:00
Donatien Garnier d55cc644ab Cordio H4: Added some comments explaining the use of RawSerial as opposed to using Serial 2018-06-15 13:30:56 +01:00
Donatien Garnier 88e06862c3 BLE: Replace Serial with RawSerial in Cordio H4 Transport Driver 2018-06-15 13:30:56 +01:00
Vincent Coubard f4089a0d74 BLE Nordic: Initialize and teardown tls platform context 2018-06-05 15:05:18 +01:00
paul-szczepanek-arm bf4a8040f0 fix erroneous assert 2018-06-05 15:05:18 +01:00
paul-szczepanek-arm ab51109a9c check for invalid param 2018-06-05 15:05:18 +01:00
paul-szczepanek-arm 5aaca082f0 fix not updating size of array 2018-06-05 15:05:18 +01:00
Cruz Monrreal 791620c428
Merge pull request #6932 from paul-szczepanek-arm/security-manager-dev
BLE privacy, signing, persistent security database
2018-05-24 10:07:06 -05:00
Donatien Garnier f08ac2e9b2
Merge pull request #52 from pan-/fix-privacy-nrf52
Fix privacy nrf52
2018-05-23 11:50:28 -05:00
Vincent Coubard db4d14c89d BLE NRF52: Fix advertising filtering when no bonds are present. 2018-05-23 17:27:18 +01:00
Vincent Coubard ef208912a6 BLE NRF52: Report correct own address type for connection
The function that gets the address doesn't work when privacy is enabled; report own address as private resolvable.
2018-05-23 17:27:18 +01:00
Vincent Coubard 30dac7cd8c BLE NRF52: Fix identity address flag in connection request. 2018-05-23 17:27:07 +01:00
Vincent Coubard 1ba5a112f4 BLE: Fix wrong macro name for IAR 2018-05-23 17:11:26 +01:00
paul-szczepanek-arm de41355c5c Fix not processing all advertising reports if one is filtered out
filtering out individual reports instead of all
2018-05-23 14:24:54 +01:00
Paul Szczepanek f4b7f32793
Merge pull request #49 from pan-/fix-privacy-backward-compatibility
Fix privacy backward compatibility
2018-05-23 14:20:49 +01:00
Vincent Coubard cfe325cf0e BLE NRF51: Do not filter advertising packet in peripheral if the device as no bond. 2018-05-22 17:40:18 +01:00
Vincent Coubard ba61c09ffc BLE NRF51: Resolve private address on connection in peripheral role
Soft device inconsistency: The address is not resolved automatically if the device is a peripheral.
2018-05-22 17:39:03 +01:00
Vincent Coubard 755cf5fa5f BLE NRF51: Defer connection to a common function.
The soft device is not consistent as it is required to force the connection to a resolved resolvable address so it should be known if the  target is an identity address.
2018-05-22 17:37:57 +01:00
Vincent Coubard d427fcfb59 Nordic BLE: Remove dependency to mbedtls for CryptoToolbox::ah. 2018-05-22 17:33:49 +01:00
paul-szczepanek-arm 69a0c10f00 removing erroneous (and redundant) check
this is gating on the wrong flag and the call doesn't require a check in the first place
2018-05-22 14:37:02 +01:00
paul-szczepanek-arm 08cb7aefd2 fix not writing flags in the file
flags kept with the rest of data for each entry
2018-05-22 14:08:09 +01:00
paul-szczepanek-arm 84ff831141 measure file size with SEEK_END
I thought that's not portable but the rest of the codebase uses it so no reason not to
2018-05-22 12:25:11 +01:00
paul-szczepanek-arm 1cd0c20fd0 fix opening the file in the wrong mode 2018-05-22 12:11:07 +01:00
paul-szczepanek-arm 7d916a9997 fix not writing version number into the file 2018-05-22 11:45:38 +01:00
Vincent Coubard fb9e0dcbe7 BLE: Fix resolvable private address identification. 2018-05-21 15:30:19 +01:00
Vincent Coubard b973a8a490 BLE: Add default constructor to peer_address_type_t 2018-05-21 15:29:54 +01:00
Vincent Coubard bdad5d6496 BLE Generic: Handle peer address type backward compatibility. 2018-05-21 13:29:06 +01:00