Commit Graph

566 Commits (d35e8e300147c65d43f349008a8fb4e969fa06c6)

Author SHA1 Message Date
paul-szczepanek-arm 02cf9ea94d moved some funcs to cpp, moved cpp to source folder 2018-11-26 10:24:35 +00:00
paul-szczepanek-arm e9c0f587af fix constness to match recent const changes 2018-11-26 10:24:34 +00:00
Vincent Coubard 87f36450f5 BLE: return immutable buffer from AdvertisingDataBuilder::getAdvertisingData 2018-11-26 10:24:34 +00:00
Vincent Coubard dfa7749d8a BLE: Split ble/gap/AdvertisingDataBuilder.h into declaration and implementation file. 2018-11-26 10:24:34 +00:00
Vincent Coubard 0c2efc4dd9 BLE: Fix return value of GenericGap::manageConnectionParametersUpdateRequest. 2018-11-26 10:24:34 +00:00
Vincent Coubard 586aea553b BLE: Move privacy subsystem to ::ble::Gap. 2018-11-26 10:24:34 +00:00
Vincent Coubard c54e0d9862 BLE: Move Gap::StopScan into ::ble::Gap::stopScan . 2018-11-26 10:24:34 +00:00
Vincent Coubard bc6078eb77 BLE: prevent warning from deprecated API implementation in GenericGap. 2018-11-26 10:24:34 +00:00
Vincent Coubard 4fdb9c7e67 BLE: provide default implementation ::ble::Gap::isFeatureSupported 2018-11-26 10:24:34 +00:00
Vincent Coubard a9fd003803 BLE: Move uses of deprecated Gap functions into isolated and warning free block. 2018-11-26 10:24:34 +00:00
Vincent Coubard 1802909272 BLE: Move Gap deprecated implementation in source/Gap.cpp .
The implementation has been moved to a block that do not issue deprecation warning as this is an implementation detail.
2018-11-26 10:24:34 +00:00
Vincent Coubard 02d61cfe24 BLE: Move new version of ::GAP in a new class ::ble::Gap . 2018-11-26 10:24:34 +00:00
Vincent Coubard 869bb308c5 BLE: Add API to manage GAP connection parameter updates. 2018-11-26 10:24:34 +00:00
Vincent Coubard da7d4a0c12 BLE: Introduce new disconnection API. 2018-11-26 10:24:33 +00:00
Vincent Coubard 7d7ccea827 BLE: clean separation between GAP v1 and GAP v2 API. 2018-11-26 10:24:33 +00:00
Vincent Coubard fa4aa8f068 BLE: remove inner V2 typedef in Gap class. 2018-11-26 10:24:33 +00:00
Vincent Coubard d3c26f4283 BLE: rename functions that trap concurrent use of incorect GAP APIs 2018-11-26 10:24:33 +00:00
Vincent Coubard 6de585f7bf BLE: rename Gap::IsFeatureSupported into Gap::isFeatureSupported 2018-11-26 10:24:33 +00:00
paul-szczepanek-arm 3e72570c52 move values out of GAP 2018-11-26 10:24:33 +00:00
Vincent Coubard 7aa1e95193 BLE: merge ble::target_peer_address_type_t and advertising_peer_address_type_t 2018-11-26 10:24:33 +00:00
paul-szczepanek-arm d8eb9de459 fix names 2018-11-26 10:24:33 +00:00
Vincent Coubard ad127d76af BLE: merge ble::own_address_t and pal::own_address_type_t. 2018-11-26 10:24:33 +00:00
Vincent Coubard d1cb1e1a39 BLE: merge ble::scanning_filter_duplicates_t and pal::duplicate_filter_t 2018-11-26 10:24:33 +00:00
Vincent Coubard 07d73d5e20 BLE: merge ble::scanning_policy_mode_t and gap::scanning_filter_policy_t
This change set also introduce ble::initiator_filter_policy_t and fix a type issue ble::ConnectionParameters.
2018-11-26 10:24:33 +00:00
Vincent Coubard c6cdfd0b7e BLE: Merve ble::advertising_policy_mode and pal::advertising_filter_policy . 2018-11-26 10:24:33 +00:00
Vincent Coubard db55540952 BLE: merge ble::advertising_type_t and pal::advertising_type_t. 2018-11-26 10:24:33 +00:00
paul-szczepanek-arm b59b29ba9f reject conenct request if exteneded not enabled but required 2018-11-26 10:24:33 +00:00
Vincent Coubard 823825ee24 BLE: Fix ternary expression return type. 2018-11-26 10:24:33 +00:00
Vincent Coubard d659bc6561 BLE: unwrap own_address_type value in GenericGap. 2018-11-26 10:24:33 +00:00
Vincent Coubard 812b86a197 BLE: cleanup ble::AdvertisingParameters
* Use constrained types where relevant.
* Remove fields N/A fields
2018-11-26 10:24:33 +00:00
paul-szczepanek-arm 65d84e4227 fix case 2018-11-26 10:24:33 +00:00
paul-szczepanek-arm 09f71d278d move feature support into user api 2018-11-26 10:24:33 +00:00
Vincent Coubard f0cbd9f434 BLE: move GapAdvertisingParameters to ble::AdvertisingParameters 2018-11-26 10:24:33 +00:00
Vincent Coubard 1324116377 BLE: rename duration type and extract them out of Gap. 2018-11-26 10:24:33 +00:00
Vincent Coubard 6f21326b6a BLE: Move Gap event types in dedicated file. 2018-11-26 10:24:33 +00:00
Vincent Coubard 4d3354077e BLE: rename GapExtendedConnectParameters_t into ConnectionParameters 2018-11-26 10:24:32 +00:00
Vincent Coubard 2d1362c2c4 BLE: Move GapScanParameters header into ble/gap/ScanParameters 2018-11-26 10:24:32 +00:00
paul-szczepanek-arm da22df74bc docs and synchronise connection result with other events 2018-11-26 10:24:32 +00:00
Vincent Coubard 4de9a613c8 BLE: Add strict Duration type
* Construction from representation type is explicit
* Conversion between unit is only allowed if there is no precision loss
* Range is built inside the type
* More operators!
* min and max values exposed as part of the interface
2018-11-26 10:24:32 +00:00
Vincent Coubard 5ad50a20f8 BLE: Add PHY precondition check in setScanParameters. 2018-11-26 10:24:32 +00:00
Vincent Coubard 3e884a382e BLE: Initialisation of legacy advertising set. 2018-11-26 10:24:32 +00:00
Vincent Coubard 6fccb11006 BLE: Deal with random address rotation where appropriate. 2018-11-26 10:24:32 +00:00
Vincent Coubard 09d22a329c BLE: Address special case when advertising payload size is 0. 2018-11-26 10:24:32 +00:00
Vincent Coubard 9604c0187a BLE: Introduce Duration and Bounded classes. 2018-11-26 10:24:32 +00:00
paul-szczepanek-arm cfde4ed019 disallow removing the legacy handle 2018-11-26 10:24:32 +00:00
paul-szczepanek-arm 57e4cdd732 new units 2018-11-26 10:24:32 +00:00
paul-szczepanek-arm 7b4439567d comparison operator 2018-11-26 10:24:32 +00:00
Vincent Coubard f136b0cb00 BLE: Rework Gap event handler.
Every user facing event handler accept a single parameter type; event that contains all the event fields.
That strategy allows us to extend the type later if required while we do not disrupt existing code.
2018-11-26 10:24:32 +00:00
Vincent Coubard 6a63948a7d BLE: Add phy in sync exstablished event. 2018-11-26 10:24:32 +00:00
Vincent Coubard 194e2cb4f8 BLE: Move common type from pal to ble namespace. 2018-11-26 10:24:32 +00:00
Vincent Coubard b6c7bd7960 Merge pull request #1 from paul-szczepanek-arm/vincent
connections
2018-11-26 10:24:32 +00:00
paul-szczepanek-arm 00da0e571a fix review comments 2018-11-26 10:24:32 +00:00
paul-szczepanek-arm 8733d52da9 event types fixed 2018-11-26 10:24:32 +00:00
paul-szczepanek-arm 68b5aad2ce ppm case 2018-11-26 10:24:32 +00:00
paul-szczepanek-arm 8cc580d986 only one connection event needed 2018-11-26 10:24:32 +00:00
paul-szczepanek-arm 2cdff44f2a cancel connection 2018-11-26 10:24:32 +00:00
paul-szczepanek-arm 365a6c8c4d set random address 2018-11-26 10:24:32 +00:00
paul-szczepanek-arm 62b38cfbc8 connection complete event 2018-11-26 10:24:31 +00:00
paul-szczepanek-arm b98326150d fix names 2018-11-26 10:24:31 +00:00
paul-szczepanek-arm bd8b7fa87f use set value on return 2018-11-26 10:24:31 +00:00
paul-szczepanek-arm 5e6c0c92f6 compilation errors 2018-11-26 10:24:31 +00:00
paul-szczepanek-arm b489e0957e pal call 2018-11-26 10:24:31 +00:00
Vincent Coubard 651bf321db BLE: Use typedef in signature. 2018-11-26 10:24:31 +00:00
Vincent Coubard 31e028f22f BLE: fix integer overflow in setPeriodicAdvertisingParameters 2018-11-26 10:24:31 +00:00
Vincent Coubard 3eebcc49ad BLE: Add more precondition check to GenericGap. 2018-11-26 10:24:31 +00:00
Vincent Coubard d23bd2f268 BLE: Fix compilation error. 2018-11-26 10:24:31 +00:00
Vincent Coubard 297ad78452 BLE: check for periodic advertising enabled in GenericGap::destroyAdvertisingSet 2018-11-26 10:24:31 +00:00
Vincent Coubard 24e6b89ade BLE: use uint32_t to describe ms interval in Gap::setPeriodicAdvertisingParameters 2018-11-26 10:24:31 +00:00
Vincent Coubard 01b0de2175 BLE: rename Gap:setPeriodicAdvertisingData into setPeriodicAdvertisingPayload. 2018-11-26 10:24:31 +00:00
Paul Szczepanek eefdc638f7 BLE: fix condition in advertising set allocation.
Co-Authored-By: pan- <vincent.coubard@arm.com>
2018-11-26 10:24:31 +00:00
Vincent Coubard b1c6914e34 BLE: Add periodic sync advertisement management. 2018-11-26 10:24:31 +00:00
Vincent Coubard 06b3ccd322 BLE: refactor parameters order of Gap::startAdvertising 2018-11-26 10:24:31 +00:00
Vincent Coubard d6d1ea5c2a BLE: rework GenericGap::stopAdvertising(AdvHandle) 2018-11-26 10:24:31 +00:00
Vincent Coubard 74356aa7f0 BLE: Rework GenericGap::startAdvertising 2018-11-26 10:24:31 +00:00
Vincent Coubard b825ffc1f6 BLE: Handle setAdvertisingParameters on legacy controllers. 2018-11-26 10:24:31 +00:00
Vincent Coubard d2773e9731 BLE: Reduce complexity of GenericGap::setAdvertisingData 2018-11-26 10:24:31 +00:00
Vincent Coubard 0d90671842 BLE: Fix release of advertising sets. 2018-11-26 10:24:31 +00:00
Vincent Coubard 413908d594 BLE: Renaming
GenericGap::is_extended_advertising_enabled become GenericGap::is_extended_advertising_available
2018-11-26 10:24:31 +00:00
Vincent Coubard df5e01bf45 BLE: wrap bitstream manipulation into a BitArray class. 2018-11-26 10:24:31 +00:00
Vincent Coubard 2e8389d4fd BLE: Create and destroy advertising sets in the controller. 2018-11-26 10:24:31 +00:00
Vincent Coubard ed012adab3 BLE: Fix create and destroy advertising set. 2018-11-26 10:24:31 +00:00
Vincent Coubard 7882bb3016 BLE: Fix bit access to mapped advertising set. 2018-11-26 10:24:31 +00:00
Vincent Coubard f6ceafa3e9 BLE: use helper function where appropriate. 2018-11-26 10:24:31 +00:00
Vincent Coubard d63c7bc948 BLE: use std::min where appropriate. 2018-11-26 10:24:31 +00:00
Vincent Coubard a628eba212 BLE: cosmetic fixes. 2018-11-26 10:24:31 +00:00
Vincent Coubard ad3f3c86a5 BLE: Move implementation to cpp file. 2018-11-26 10:24:31 +00:00
Vincent Coubard 6a55d65660 BLE: Create advertising payload builder.
This change set use a data buffer to set data and scan responses.
2018-11-26 10:24:31 +00:00
Vincent Coubard 2c7cf2bbd9 BLE: revert GapScanningParams 2018-11-26 10:24:31 +00:00
Vincent Coubard 61536c3f64 BLE: revert non backward compatible changes.
This changeset includes order of function declaration in headers.
2018-11-26 10:24:31 +00:00
Vincent Coubard dc07e44290 BLE: makes GenericGap::stopGap aware of extended scan. 2018-11-26 10:24:31 +00:00
Vincent Coubard 24460de86f BLE: Implement new scan API in GenericGap 2018-11-26 10:24:30 +00:00
Vincent Coubard 1a14453da1 BLE: Add mechanism to track use of non compatible scan API. 2018-11-26 10:24:30 +00:00
paul-szczepanek-arm a1582bd3ac pointer to ref 2018-11-26 10:21:32 +00:00
paul-szczepanek-arm 2f6d861818 fix packetisation in adv set data 2018-11-26 10:21:32 +00:00
paul-szczepanek-arm 23dc808968 handle legacy adv calls 2018-11-26 10:21:32 +00:00
paul-szczepanek-arm 587eb9845e call the right func for set scan response 2018-11-26 10:21:32 +00:00
paul-szczepanek-arm b276e6edaf fix high duty cycle setting (reversed) 2018-11-26 10:21:32 +00:00
paul-szczepanek-arm 238f15b031 doc fixes 2018-11-26 10:21:32 +00:00
paul-szczepanek-arm ca72f5a289 merged adv param types 2018-11-26 10:21:32 +00:00
paul-szczepanek-arm 8c253a3dfe proposed scan type changes 2018-11-26 10:21:32 +00:00
paul-szczepanek-arm 60fb78795b fix adv and scan types 2018-11-26 10:21:32 +00:00
paul-szczepanek-arm 5d077e6dbc new addr types for ext adv 2018-11-26 10:21:32 +00:00
Vincent Coubard 0c1e01952b Compilation fixes 2018-11-26 10:21:32 +00:00
paul-szczepanek-arm 78a4bdda8a type translation 2018-11-26 10:21:32 +00:00
paul-szczepanek-arm 8794c0b43b make packetisation common 2018-11-26 10:21:32 +00:00
paul-szczepanek-arm 87482b5530 compilation errors fixed 2018-11-26 10:21:32 +00:00
paul-szczepanek-arm 26f40e07f7 packetisation 2018-11-26 10:21:31 +00:00
paul-szczepanek-arm 56146a44fb legacy support 2018-11-26 10:21:31 +00:00
paul-szczepanek-arm 5efac211be sid 2018-11-26 10:21:31 +00:00
paul-szczepanek-arm 25997d96b9 chek for features 2018-11-26 10:21:31 +00:00
paul-szczepanek-arm 6ca5041f53 generic advertising 2018-11-26 10:21:31 +00:00
paul-szczepanek-arm 6932789453 extended advertising scanning and connecting API 2018-11-26 10:21:31 +00:00
Cruz Monrreal 83e0e65a42
Merge pull request #7726 from SenRamakri/sen_BLE_ErrorUpdate
Update BLE error calls to use new error codes and mbed_error
2018-09-02 20:47:40 -05:00
paul-szczepanek-arm baaebb47dc fix typo in preferred 2018-08-29 20:21:04 +01:00
paul-szczepanek-arm 8090e7acd8 phy API implementation for cordio
phy set types added, nordic implementation updated
2018-08-29 20:21:04 +01:00
Paul Szczepanek d5c675e300 Merge pull request #6 from paul-szczepanek-arm/feature-support
support for controller features
2018-08-29 20:15:58 +01:00
Martin Kojtal e43f0201a7
Merge pull request #7681 from paul-szczepanek-arm/sc-ltk
BLE: store secure connections ltk in both local and peer entry
2018-08-20 18:01:31 +02:00
Senthil Ramakrishnan 529af2b0f4 Changes to error code names 2018-08-17 23:13:59 -05:00
Senthil Ramakrishnan 7803a40fbd Update BLE error calls to use new error codes and mbed_error 2018-08-17 22:52:50 -05:00
paul-szczepanek-arm 34d985a4ac set correct default privacy configuration for centrals 2018-08-03 09:54:46 +01:00
paul-szczepanek-arm e92863a7be store secure connections ltk in both local and peer entry 2018-08-02 15:33:47 +01:00
paul-szczepanek-arm bd8572e20f missing return
function would potentially send a reject and accept at the same time
2018-06-07 17:18:08 +01:00
paul-szczepanek-arm ff7b13837f check for invalid param 2018-06-01 15:57:39 +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
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 bdad5d6496 BLE Generic: Handle peer address type backward compatibility. 2018-05-21 13:29:06 +01:00
paul-szczepanek-arm 17e8ed9401 forward resolving list init 2018-05-21 11:34:40 +01:00
Vincent Coubard 28766bd873 BLE: Do not pass peer resolvable address in connection event handler 2018-05-21 10:17:44 +01:00
paul-szczepanek-arm cd9f12ab45 return error codes 2018-05-18 13:59:30 +01:00
paul-szczepanek-arm ace491d430 remove duplicate call 2018-05-18 13:54:15 +01:00
paul-szczepanek-arm 9da64e529e refactor into separate functions for readability and correctness of pal matching db 2018-05-18 13:46:55 +01:00
paul-szczepanek-arm 439d002f7d new API call to change db at runtime 2018-05-18 12:34:52 +01:00
paul-szczepanek-arm 608ad338e8 return error when not initialised 2018-05-18 10:24:16 +01:00
Vincent Coubard d361960aa3 BLE: Use peer_address_type_t instead of the legacy address in security manager. 2018-05-18 10:04:27 +01:00
Vincent Coubard a052afdd40 BLE: Update APIs to take advantage of ble::peer_address_type_t
Deprecation:

* Gap::AdvertisementCallback::addressType has been deprecated in favor of Gap::AdvertisementCallback::peerAddrType.
* Gap::ConnectionCallbackParams::peerAddrType has been deprecated in favor of Gap::ConnectionCallbackParams::peerAddressType.
* Gap::ConnectionCallbackParams::ownAddr has been deprecated in favor of nothing else as this information may be not available.

Overloads added to accept a peer_address_t:

* Gap::connect
* Gap::processConnectionEvent
* Gap::processAdvertisingReport
2018-05-17 13:27:15 +01:00
Vincent Coubard 0eb680a08b GenericGap: Revert changes introduced to accomodate privacy. 2018-05-17 10:56:29 +01:00
Donatien Garnier ad09ba0dcc Fix handling of security escalation in on_connection_complete() 2018-05-16 13:54:25 +01:00
Donatien Garnier 3f7a7a4213 Merge 2018-05-16 12:44:36 +01:00
Donatien Garnier 7ef7ef553c Fix is_random_xxx_address() functions in GenericGap that I had broken :) 2018-05-16 12:04:04 +01:00
Donatien Garnier 1fdb57e82c Removed set_privacy() API and added is_privacy_supported() check to PAL + Generic GAP 2018-05-16 12:02:21 +01:00
paul-szczepanek-arm 1ae13bc80f don't reset db on security manager reset as the docs require 2018-05-16 11:46:36 +01:00
paul-szczepanek-arm bcca75973e reseting the security db 2018-05-16 11:23:17 +01:00
paul-szczepanek-arm c2bbc94b44 handle init of an already initialised security db 2018-05-16 11:01:37 +01:00
Vincent Coubard afcbdfc7dc Merge branch 'security-manager-dev' of https://github.com/paul-szczepanek-arm/mbed-os into filedb 2018-05-16 08:43:52 +01:00
Donatien Garnier 288c3952d8 Address Paul's comments 2018-05-15 18:37:50 +01:00
paul-szczepanek-arm 5c598688e4 templates for reading and writing to avoid repetition 2018-05-15 16:35:54 +01:00
Vincent Coubard 2860365a3c BLE: Improve readibility of condition. 2018-05-15 12:16:51 +01:00
paul-szczepanek-arm 49db7e2a2a restoring db file blanks file if set to not restore, allow reusing the db 2018-05-15 11:46:39 +01:00
paul-szczepanek-arm f8244a3d87 review comments, init partly moved to restore, restore setting enabled, null check on filepath 2018-05-15 10:24:59 +01:00
Donatien Garnier 6c6af1b0d5 Added missing masks and fixed bit ordering in is_random_xx_address() functions 2018-05-14 13:59:32 +01:00
Donatien Garnier d8b63fc03d Reordered initializers in GenericGap 2018-05-14 13:53:50 +01:00
Donatien Garnier 67ec6323fc Added update_random_address() implementation in GenericGap 2018-05-14 13:52:29 +01:00
Donatien Garnier 3523cdb264 Missing initializer in GenericGap 2018-05-14 13:37:37 +01:00
Donatien Garnier 472d3de849 Give GenericGap access to the Security Manager's PAL 2018-05-14 13:36:02 +01:00
Donatien Garnier a3d9d6cebd Business logic for handling non-resolvable private addresses 2018-05-14 13:26:39 +01:00
paul-szczepanek-arm 579cb5e222 avoid setting flags twice 2018-05-14 10:26:44 +01:00
paul-szczepanek-arm f4f3a3c697 store ltk and csrk but not irk sent status
and missing asserts
2018-05-14 09:52:49 +01:00
paul-szczepanek-arm 8f90875cd6 reset entry now remove old keys 2018-05-13 23:49:27 +01:00
paul-szczepanek-arm 23c6a69d66 key dist flags only in db now and not in control block of sec manager 2018-05-13 23:26:34 +01:00
Donatien Garnier 69e35c49c8 Handle resolution policy for peripheral in GenericGap 2018-05-13 23:25:52 +01:00
paul-szczepanek-arm ab117737fa write back counter, sync entry by hand;e 2018-05-13 22:55:47 +01:00
Donatien Garnier 21471bb3c9 and make sure it compiles and that policy is only applied if privacy is enabled :) 2018-05-13 22:42:11 +01:00
Donatien Garnier 926efa4018 Filter out advertising reports for unresolved addresses if required 2018-05-13 22:37:59 +01:00
Donatien Garnier 6a2ffaeac0 Update own address type generation in GenericGap 2018-05-13 22:16:08 +01:00
Donatien Garnier 620ebc3f9a Some fixes in GenericGap 2018-05-13 20:38:29 +01:00
Donatien Garnier 4c5e2a8094 Added method to update resolution settings in GenericGap 2018-05-13 19:14:56 +01:00
Donatien Garnier 7b4a813aca Added stubs in GenericGap for privacy configuration methods 2018-05-13 18:52:54 +01:00
Donatien Garnier e9ad148db0 Added privacy-related methods overrides in GenericGap 2018-05-13 17:57:27 +01:00
paul-szczepanek-arm 3af4d0b50f get identity list function argument needs to have its own memory allocated 2018-05-11 19:52:12 +01:00
paul-szczepanek-arm a63f38e767 moved logic to security db and left storage in memory and file dbs
db created at init now
2018-05-11 19:41:33 +01:00
Vincent Coubard 40a403e99b Merge branch 'security-manager-dev' of https://github.com/paul-szczepanek-arm/mbed-os into fix-encryption-rejection 2018-05-10 12:05:36 +01:00
paul-szczepanek-arm 473482d204 move securitydb into generic 2018-05-10 11:08:31 +01:00
Paul Szczepanek 2b02148ab6
Merge branch 'master' into security-manager-dev 2018-05-09 11:23:28 +01:00
Paul Szczepanek 9a0a0865a6
Merge branch 'security-manager-dev' into sm-privacy-nordic 2018-05-08 18:01:41 +01:00
Vincent Coubard fd5903c22d GenericGattClient: Fix discovery termination.
The procedure should be terminated whenever the server returns an error not equal
to ATTRIBUTE_NOT_FOUND. The block was effectivelly terminated but the
procedure was not. As a result the discovery was operating on already
freed memory.
2018-05-04 11:30:58 +01:00
Vincent Coubard 4e5639f5ca BLE: Support encryption with secure connection key. 2018-05-02 17:51:48 +01:00
Vincent Coubard 55eb7033b2 Generic Security Manager: Set csrk to stored when the peer csrk has been received. 2018-05-01 11:54:25 +01:00
Vincent Coubard 41a3442474 Generic Security Manager: Set ltk to stored when the peer ltk has been recveived. 2018-05-01 11:54:03 +01:00
Vincent Coubard f90eacfd27 Generic Security Manager: remove peer csrk at disconnection 2018-05-01 11:53:18 +01:00
Vincent Coubard 1ac95e105b ble - Generic Security Manager: set signing unconditionnal to role reversal.
A peripheral can act as a GATT client whether it is in the peripheral role or the central role therefore it doesn't make sense to enable signing only if roles will be reversed latter.
2018-05-01 11:50:59 +01:00
Vincent Coubard 9880db7543 Generic Security Manager: Improve formating 2018-05-01 11:48:22 +01:00
Vincent Coubard 2e3c7e8ab7 Generic Security Manager: Set LinkKey to false unconditionally.
This key distribution flags is for dual mode devices; mbed does not support BR/EDR.
2018-05-01 11:45:24 +01:00
Vincent Coubard e39bb4b92c BLE - GenericGattClient: Exploit ENCRYPTED_WITH_SC_AND_MITM encryption.
IF link is encrypted, authenticated or authenticated with lesc then signed write must be transformed into regular write commands.
2018-05-01 11:38:30 +01:00
Vincent Coubard b0d5ba33bb BLE: return an error when application tries to turn down encryption. 2018-04-20 15:49:14 +01:00
paul-szczepanek-arm d1f3e4fd27 don't require master sends keys for signing key 2018-04-20 09:33:54 +01:00
Vincent Coubard 169e579de7 BLE: Handle new addresses type in GenericGap. 2018-04-17 17:05:41 +01:00
Vincent Coubard 951a6be4c8 BLE: retrieve and fill resolving list at GenericSecurityManager startup. 2018-04-17 15:58:21 +01:00
Vincent Coubard 77b1903634 BLE: Add bonded device to resolving list at the end of bonding. 2018-04-17 14:16:35 +01:00
Vincent Coubard dfbf383614 BLE: Fix const correctness of ::Gap::getRandomAddressType 2018-04-17 14:03:57 +01:00
Vincent Coubard a7f2384e10 BLE: Add default privacy configuration 2018-04-16 18:18:04 +01:00
paul-szczepanek-arm 6b67a6d0a6 missing deref after signature change 2018-04-16 15:06:37 +01:00
Paul Szczepanek d8f5100822
Merge pull request #30 from pan-/sm-privacy
BLE: Add Gap privacy interfaces.
2018-04-12 14:59:27 +01:00
Vincent Coubard 90c85955ad BLE: Fix GAP privacy related signatures. 2018-04-12 11:04:44 +01:00