Commit Graph

497 Commits (b9d824d67cb15cf43a205aa5c78336aaa2aaeecf)

Author SHA1 Message Date
Vincent Coubard 190b9bc125 BLE: Fix address type in ::ble::Gap::connect 2018-11-26 14:13:07 +00:00
Vincent Coubard 78d4a9b6c8 BLE: Cleanup enum duplicates in gap/Types.h 2018-11-26 10:24:35 +00:00
Vincent Coubard e130bec6a0 BLE: rework ScanParameters::phy_configuration_t 2018-11-26 10:24:35 +00:00
Vincent Coubard 4db8ddfb90 BLE: fix name of functions in ble::ScanParameters. 2018-11-26 10:24:35 +00:00
Vincent Coubard 6b8b1d0b7a BLE: remove minimize fragmentation parameter in Gap. 2018-11-26 10:24:35 +00:00
Vincent Coubard 4058f0908a BLE: Extract computation of minimumSupervisionTimeout. 2018-11-26 10:24:35 +00:00
Vincent Coubard b49870d8ae BLE: Fix code formating issues in Gap subsystem. 2018-11-26 10:24:35 +00:00
Vincent Coubard 70ec1cf641 BLE: Improve naming consistency of Gap event types. 2018-11-26 10:24:35 +00:00
Vincent Coubard 8fc62efbd8 BLE: Improve naming consistency of ble::Gap::EventHandler functions. 2018-11-26 10:24:35 +00:00
Vincent Coubard 52318e464d BLE: rename AdvertisingParameters::*PolicyMode into AdvertisingParameters::*Filter. 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 0c2efc4dd9 BLE: Fix return value of GenericGap::manageConnectionParametersUpdateRequest. 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 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 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 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 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
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
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 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 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