paul-szczepanek-arm
8e18e191fb
new units
2018-11-26 10:24:32 +00:00
paul-szczepanek-arm
e04fd876f5
units
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
74c2def5ef
BLE: Fix mutability in ble::advertising_event_t
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
9b77f9dcba
default values and func names
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
c0f4b864ca
clamp values
2018-11-26 10:24:32 +00:00
paul-szczepanek-arm
216dd6dcc7
we need clamping while we wait for c++17
2018-11-26 10:24:32 +00:00
paul-szczepanek-arm
a3820c89c5
removed impossible case
2018-11-26 10:24:32 +00:00
paul-szczepanek-arm
02d9b35bad
assert added
2018-11-26 10:24:32 +00:00
paul-szczepanek-arm
32c303d7f3
missing return
2018-11-26 10:24:32 +00:00
paul-szczepanek-arm
87887cc9dd
rename phy to index
2018-11-26 10:24:32 +00:00
paul-szczepanek-arm
565f1e0131
fix first element of array selection
2018-11-26 10:24:32 +00:00
paul-szczepanek-arm
fd880d1e6b
fix swapping
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
519f75587a
ppm conversion
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
6fa7a8ffce
fix type
2018-11-26 10:24:31 +00:00
paul-szczepanek-arm
9529974572
type already defined in ble types
2018-11-26 10:24:31 +00:00
paul-szczepanek-arm
4fe7d5ed90
small cleanup
2018-11-26 10:24:31 +00:00
paul-szczepanek-arm
8801ef570a
fix types
2018-11-26 10:24:31 +00:00
paul-szczepanek-arm
b489e0957e
pal call
2018-11-26 10:24:31 +00:00
paul-szczepanek-arm
a2f461c38e
reference instead of pointer
2018-11-26 10:24:31 +00:00
paul-szczepanek-arm
32d3fa9aad
shorten min max
2018-11-26 10:24:31 +00:00
paul-szczepanek-arm
edb645b492
handle creating contiguous arrays for the pal call
2018-11-26 10:24:31 +00:00
paul-szczepanek-arm
713b5c7e10
add ability to disable phy
2018-11-26 10:24:31 +00:00
paul-szczepanek-arm
d00a92d10f
init param to false until user changes it
2018-11-26 10:24:31 +00:00
paul-szczepanek-arm
4c4743db7b
extended connection API
2018-11-26 10:24:31 +00:00
paul-szczepanek-arm
afadc1d8c0
convert to correct time units
2018-11-26 10:24:31 +00:00
Vincent Coubard
2f8e336635
BLE: tag missing documentation block.
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
5661bf6bbb
BLE: remove dead code.
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
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
Vincent Coubard
b1c6914e34
BLE: Add periodic sync advertisement management.
2018-11-26 10:24:31 +00:00
Vincent Coubard
5236a70618
BLE: Add default minimiseFragmentationValue for Gap::setAdvertisingScanresponse.
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
b825ffc1f6
BLE: Handle setAdvertisingParameters on legacy controllers.
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
d63c7bc948
BLE: use std::min where appropriate.
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
87014b71b6
BLE: reorder declaration.
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
e24fcdd12a
BLE: move extended advertising parameter in ble/gap folder
2018-11-26 10:24:31 +00:00
Vincent Coubard
7f9be995a2
BLE: Revert GapAdvertisingdata and create new type for extened Advertising data.
2018-11-26 10:24:31 +00:00
Vincent Coubard
e4c27e5071
BLE: Introduce new type for extended advertising parameters.
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
24460de86f
BLE: Implement new scan API in GenericGap
2018-11-26 10:24:30 +00:00
Vincent Coubard
4835a1afdc
BLE: Add non legacy scan API.
2018-11-26 10:24:30 +00:00
Vincent Coubard
28ead51401
BLE: Add GapScanParameters type.
...
The new type covers what is required by extended and legacy scan parameters.
2018-11-26 10:24:30 +00:00
Vincent Coubard
27ea248863
BLE: Fix GapScanningParams includes.
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
Vincent Coubard
962b5c34d4
BLE: Tag scanning filter policy mode with FIXME
2018-11-26 10:21:32 +00:00
paul-szczepanek-arm
2b00903a30
missing param
2018-11-26 10:21:32 +00:00
paul-szczepanek-arm
a1582bd3ac
pointer to ref
2018-11-26 10:21:32 +00:00
paul-szczepanek-arm
6663171607
docs
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
paul-szczepanek-arm
c58099f0ee
new scan call
2018-11-26 10:21:32 +00:00
Vincent Coubard
75c0b0ed90
BLE: Fix advertising_channel_map_t constructor.
2018-11-26 10:21:32 +00:00
Vincent Coubard
0c1e01952b
Compilation fixes
2018-11-26 10:21:32 +00:00
Vincent Coubard
fb804bf85a
BLE: Fix GapExtendedAdvertisingParams visibility and constness.
2018-11-26 10:21:32 +00:00
Vincent Coubard
e951fa15ff
BLE: Fix GapExtendedAdvertisingParams::getPeerAddress return type.
2018-11-26 10:21:32 +00:00
Vincent Coubard
426de4a2d9
BLE: Fix GapAdvertisingData copy constructor.
2018-11-26 10:21:32 +00:00
Vincent Coubard
2f53ee896c
BLE: Add setters to advertising_event_t and use it in GapExtendedAdvertisingParams.
2018-11-26 10:21:32 +00:00
Vincent Coubard
d1e3800e79
BLE: Refactor AdvReportOptionalInformation and onAdvertisingReport
2018-11-26 10:21:32 +00:00
Vincent Coubard
5e707731f2
BLE: Wrap advertising data in a span.
2018-11-26 10:21:32 +00:00
Vincent Coubard
dee48e71e3
BLE: Typedef ble::advertising_event_t into Gap::AdvertisingEventType_t
2018-11-26 10:21:32 +00:00
Vincent Coubard
f930905947
BLE: Regactor Gap::EventHandler::onScanRequest signature.
2018-11-26 10:21:32 +00:00
Vincent Coubard
14b24d324c
BLE: Move advertising_handle_t into ble namespace.
2018-11-26 10:21:32 +00:00
Vincent Coubard
f83f32948a
BLE: Fix typo in arguments name.
2018-11-26 10:21:32 +00:00
Vincent Coubard
44d8545dc8
BLE: Add ANONYMOUS in peer_advertising_type_t
2018-11-26 10:21:32 +00:00
Vincent Coubard
e58928def1
Move advertising event and advertising event data status to ble.
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
a5e1bdb97e
missing parens
2018-11-26 10:21:32 +00:00
paul-szczepanek-arm
060d2f5216
advertising data only contains advertising data
2018-11-26 10:21:32 +00:00
paul-szczepanek-arm
52f54c032a
compiilation errors
2018-11-26 10:21:32 +00:00
paul-szczepanek-arm
4a86b3dd10
typo in var name
2018-11-26 10:21:31 +00:00
paul-szczepanek-arm
019b0c2146
added constructor to use with deprecated data
2018-11-26 10:21:31 +00:00
paul-szczepanek-arm
93b0b9f6e2
fix getting value instead of address
2018-11-26 10:21:31 +00:00
paul-szczepanek-arm
944d867c79
fix comments and missing comma in constructor
2018-11-26 10:21:31 +00:00
paul-szczepanek-arm
9d83a8e134
non braking Advertising data deprecation
2018-11-26 10:21:31 +00:00
paul-szczepanek-arm
26f40e07f7
packetisation
2018-11-26 10:21:31 +00:00
paul-szczepanek-arm
834e6c4f9b
Update mbed-os/features/FEATURE_BLE/ble/GapAdvertisingData.h
2018-11-26 10:21:31 +00:00
paul-szczepanek-arm
56146a44fb
legacy support
2018-11-26 10:21:31 +00:00
Vincent Coubard
7de5d8c763
Merge pull request #4 from pan-/extended
...
Last bit of PAL extended advertising implementation.
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
f35ebcc900
simplify params to avoid holding state
2018-11-26 10:21:31 +00:00
Vincent Coubard
8fa62ec719
BLE: Add count function to phy_set_t
2018-11-26 10:21:31 +00:00
Vincent Coubard
ca68323930
Add explicit cast to bool.
2018-11-26 10:21:31 +00:00
Vincent Coubard
7d9c3d1432
Improve advertising_event_properties_t constructor.
2018-11-26 10:21:31 +00:00
Vincent Coubard
d836841e0f
Add missing pure qualifier to PAL GAP APIs.
2018-11-26 10:21:31 +00:00
Vincent Coubard
74cf305452
Add PAL declaration for extended and periodic advertising
2018-11-26 10:21:31 +00:00
paul-szczepanek-arm
ff68c94ec2
update state on disconnect fix
2018-11-26 10:21:31 +00:00
paul-szczepanek-arm
1f2ee0d873
missing include
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
paul-szczepanek-arm
abfd647279
moved SimpleEventQueue
2018-09-27 13:56:38 +01:00
paul-szczepanek-arm
46d19d3732
check WsfBufAlloc
2018-09-27 13:45:36 +01:00
paul-szczepanek-arm
90be8d7807
replace malloc with cirdio buffer allocation
2018-09-27 12:20:00 +01:00
paul-szczepanek-arm
a2c9781682
fix whitelist generation (set correct address type)
2018-09-05 16:46:01 +01: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
Vincent Coubard
7a503ca1a2
BLE: Fix doxygen.
2018-08-30 09:25:50 +01:00
paul-szczepanek-arm
db3d124516
moved the utility function into the pal since it's only useful below pal
2018-08-29 20:25:56 +01:00
paul-szczepanek-arm
03f44e7a29
accidental spare const removed
2018-08-29 20:25:56 +01:00
paul-szczepanek-arm
8ac6e2c30d
added doxygen to constructors and const to getters
2018-08-29 20:25:56 +01:00
paul-szczepanek-arm
76624ad6ec
provide stubs for events
...
use gap.h typedef for Phy_t for consistency
2018-08-29 20:21:04 +01:00
paul-szczepanek-arm
5598958c6d
formatting for docs
2018-08-29 20:21:04 +01:00
paul-szczepanek-arm
baaebb47dc
fix typo in preferred
2018-08-29 20:21:04 +01:00
paul-szczepanek-arm
d64479a2ee
docuemnted PHY api
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
Vincent Coubard
47ea39982f
Merge pull request #2 from pan-/PHY_API
...
Phy api
2018-08-29 20:15:58 +01:00
Vincent Coubard
4deb64aed1
Merge pull request #1 from pan-/PHY_API
...
Phy api
2018-08-29 20:15:58 +01: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
399191fc9c
reuse existing call
2018-06-20 08:24:26 +01:00
paul-szczepanek-arm
4b1ce49ee1
use sets to apply limits
2018-06-19 15:18:11 +01:00
paul-szczepanek-arm
588e68bccf
add setScanParams overload
2018-06-19 14:36:18 +01:00
paul-szczepanek-arm
265132c5a8
check that flags have the IRK stored before retrieving it
2018-06-05 15:15:19 +01:00
paul-szczepanek-arm
3a2dc69f11
fix not updating size of array
2018-06-01 15:57:22 +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
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
Vincent Coubard
cbba6dd0d6
BLE PAL: Update connection event to support enhanced connection events.
2018-05-21 13:22:31 +01:00
paul-szczepanek-arm
62ba220100
doxygen fix
2018-05-21 11:42:32 +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
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
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
paul-szczepanek-arm
a8ac925b4f
privacy doxygen overview
2018-05-17 16:48:49 +01:00
paul-szczepanek-arm
7e69444458
security manager doxygen overview updated
2018-05-17 14:10:57 +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
7f05fc0e00
BLE: Define peer_address_type_t
...
This type model a peer address, unlike BLEProtocol::AddressType, it is compatible with privacy concepts.
2018-05-17 10:30:24 +01:00
Vincent Coubard
e5d91932fd
BLE: Revert address type changes.
...
The changes made to BLEProtocol::AddressType was not entirelly backward compatible as BLEProtocol::AddressType split random addresses in three category while the type RANDOM is a superset of these types.
2018-05-17 10:26:04 +01:00
paul-szczepanek-arm
b845a9dc95
fixed doxygen
2018-05-16 17:24:17 +01:00
Donatien Garnier
3f7a7a4213
Merge
2018-05-16 12:44:36 +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
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
ee720f30bb
BLE: Comment security requirement elevation for signed writes.
2018-05-15 12:17:59 +01:00
Vincent Coubard
2c7ed993ec
BLE: Fix security requirements in GattCharacteristic.
2018-05-15 12:17:34 +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
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
a7f8d54761
more doxygen
2018-05-13 23:54:44 +01:00
paul-szczepanek-arm
d3524e2407
doxygen
2018-05-13 23:49:44 +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
paul-szczepanek-arm
ab117737fa
write back counter, sync entry by hand;e
2018-05-13 22:55:47 +01:00
Donatien Garnier
6a2ffaeac0
Update own address type generation in GenericGap
2018-05-13 22:16:08 +01:00
Donatien Garnier
1a623e6670
Added method to enable/disable privacy in GAP Pal with Cordio impl
2018-05-13 19:15:20 +01:00
Donatien Garnier
4c5e2a8094
Added method to update resolution settings in GenericGap
2018-05-13 19:14:56 +01:00
Donatien Garnier
cf03d40909
Doc fix in PalGap.h
2018-05-13 18:54:11 +01:00
Donatien Garnier
5734fca195
Added set_address_resolution method in GAP Pal with Cordio implementation
2018-05-13 18:53:23 +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
paul-szczepanek-arm
678d494c5a
init _db pointer
2018-05-11 10:20:04 +01:00
paul-szczepanek-arm
afa4bdcf1a
pull common logic into secure db
2018-05-11 10:19:48 +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
Paul Szczepanek
214656a9ee
fix case in #include
2018-05-08 17:56:38 +01:00
Paul Szczepanek
1a35f3e217
fixed case in name
2018-05-08 17:49:22 +01:00
Vincent Coubard
b5e8d4eacb
Merge branch 'security-manager-dev' of https://github.com/paul-szczepanek-arm/mbed-os into fix-encryption-rejection
2018-05-03 09:26:36 +01:00
Vincent Coubard
4e5639f5ca
BLE: Support encryption with secure connection key.
2018-05-02 17:51:48 +01:00
Donatien Garnier
ba0f18c9ab
Fix casing in MemorySecurityDb.h
2018-05-02 17:39:10 +01:00
Vincent Coubard
74bc214961
BLE - Security Manager PAL: Add a function to remove the peer csrk.
...
If the the upper layer has registered a peer csrk on the pal security manager then it must remove it once the connection is closed.
This API allows the upper layer to remove the peer csrk registered earlier.
2018-05-01 11:27:38 +01:00
Vincent Coubard
1e277bad50
BLE: Lookup for non identity addresses when a secure entry is opened.
...
A peer may not share a valid IRK and identity address during pairing (in that case the identity address received is all zeros). When this happens, the entry must be retrieved by looking at the address used by the peer during the connection.
2018-05-01 11:24:44 +01:00
Vincent Coubard
c4b78ada0e
BLE: Set default mac address to 00:00:00:00:00:00
...
Both mac addresses are invalid but the bluetooth specification prefers to use all 0 addresses to represent an invalid address.
2018-05-01 11:17:47 +01:00
Vincent Coubard
80941af0f6
BLE: Add : LESC authenticated encryption to the list of possible link encryption.
2018-05-01 11:16:41 +01:00
Vincent Coubard
db565d38b3
BLE: remove useless flags in GattCharacteristic.
2018-04-26 19:00:43 +01:00
Vincent Coubard
486a3e020c
BLE: Add fine grained security to GattCharacteristic.
...
This patch adds independent management of security requirement for read, write and update operatiosn of a GattCharacteristic.
Requirements are defined after ble::att_security_requirement_t that maps LE security mode 1 and LE security mode 2.
The functions requireSecurity and getRequiredSecurity are deprecated as SecurityManager::ScurityMode_t does not map well with LE security modes.
2018-04-26 18:55:42 +01:00
Vincent Coubard
1c18351885
BLE: Remove unwanted documentation block of GattCharacteristic.
2018-04-26 17:29:29 +01:00
Vincent Coubard
9258b9ddb6
BLE: Add security requement support into GattAttribute.
2018-04-26 17:26:15 +01:00
Vincent Coubard
7afd01d84d
BLE: Add type describing ATT security requirements.
2018-04-26 17:22:21 +01:00
Vincent Coubard
27d36ba820
BLE: Add missing relational operator to SafeEnum.
2018-04-26 17:07:54 +01:00
Vincent Coubard
cbb33ea938
BLE: Add comments to GenericSecurityManager::on_identity_list_retrieved.
2018-04-20 10:22:56 +01:00
Vincent Coubard
0b92397840
BLE: Fix flag IRK stored in Memory security DB.
2018-04-20 10:22:13 +01:00
paul-szczepanek-arm
f56f57bf15
reorder enum to add new values at the end
2018-04-17 16:25:35 +01:00
Vincent Coubard
951a6be4c8
BLE: retrieve and fill resolving list at GenericSecurityManager startup.
2018-04-17 15:58:21 +01:00
Vincent Coubard
ede3d43743
BLE: Add function to querry the list of identity addresses present in the SecureDB.
2018-04-17 15:57:30 +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
ae8d5b4de1
BLE: Implement identity retrieval in secure DB.
2018-04-17 14:15:28 +01:00
Vincent Coubard
f905d2a4d4
BLE: Improve DB entry lookup.
...
The DB entry lookup now looks at the identity address and/or connection address to find a DB entry associated to an address.
If the entry has not been found in the DB and a new entry is returned then the connection address is not stored for private addresses.
2018-04-17 14:14:53 +01:00
Vincent Coubard
a3bb18d724
BLE: store identity address type in DB.
2018-04-17 14:11:05 +01:00
Vincent Coubard
06e0aa3440
BLE: flag that irk has been stored in the security entry.
2018-04-17 14:10:19 +01:00
Vincent Coubard
6fc74fbc44
BLE: Fix MemorySecurityDB constructor warning.
2018-04-17 14:09:00 +01:00
Vincent Coubard
15fa3bfd37
BLE: Add a function to retrieve a device identity.
2018-04-17 14:08:01 +01:00
Vincent Coubard
e8041510a6
BLE: Add a flag that indicate if the identity address is public or not.
2018-04-17 14:07:19 +01:00
Vincent Coubard
ab6821aab8
BLE: Add a flag indicating if irk is stored in the distribution flags.
2018-04-17 14:06:47 +01:00
Vincent Coubard
9643b57159
BLE: Remove flag SecurityDistributionFlags_t::local_address_is_public
...
This flag was not used and not useful.
2018-04-17 14:06:00 +01:00
Vincent Coubard
dfbf383614
BLE: Fix const correctness of ::Gap::getRandomAddressType
2018-04-17 14:03:57 +01:00
Vincent Coubard
51e1c76b4a
BLE: Set default mac address to all 00.
2018-04-17 14:03:20 +01:00
Vincent Coubard
a7f2384e10
BLE: Add default privacy configuration
2018-04-16 18:18:04 +01:00
Vincent Coubard
90c85955ad
BLE: Fix GAP privacy related signatures.
2018-04-12 11:04:44 +01:00
Vincent Coubard
2811e00868
BLE: Fix Gap privacy related documentation
2018-04-12 10:37:13 +01:00
Vincent Coubard
1f02913a2c
BLE: Add Gap privacy interfaces.
...
This commit adds API to enable and configure the device privacy.
It deprecates address random types present in Gap::AddressType as these types are not appropriate for scan reports, connection initiation and the connection event. Now user should use the function Gap::getRandomAddressType to find the type of a random address.
The function gap::setAddress is deprecated as it is not portable and can colide with privacy.
2018-04-11 14:18:42 +01:00
Paul Szczepanek
6c900642e5
Merge pull request #28 from paul-szczepanek-arm/signing-counter
...
sign counter added
2018-04-10 17:06:14 +01:00
paul-szczepanek-arm
deeb0ea7e0
redundant store for sign counter
2018-04-09 15:11:26 +01:00
paul-szczepanek-arm
637dcb9bc8
missing *
2018-04-09 15:10:25 +01:00
paul-szczepanek-arm
55d3423a5e
typedef uint32_t
2018-04-09 13:35:17 +01:00
Vincent Coubard
f53a0e4906
Merge branch 'security-manager-dev' of https://github.com/paul-szczepanek-arm/mbed-os into sc-nordic
2018-04-09 09:09:01 +01:00
paul-szczepanek-arm
57149b69e4
monitor for signing events and set local counter
2018-04-04 19:24:00 +01:00
paul-szczepanek-arm
1d74dfa1f9
redundant funcs removed
2018-04-04 18:02:16 +01:00
Vincent Coubard
dcff810457
BLE: replace byte_array_t::buffer with byte_array_t::data
2018-04-04 17:20:08 +01:00
paul-szczepanek-arm
2e1c5fc123
completely redundant
2018-04-04 17:16:16 +01:00
paul-szczepanek-arm
539a11ee31
sign counter added
2018-04-04 15:59:10 +01:00
Vincent Coubard
cd39406d20
BLE: Add conversion function from byte_array_t to ArrayView.
2018-04-04 15:28:52 +01:00
Vincent Coubard
5761caff00
BLE: Extend ArrayView to encode size in type.
...
With this change, it is possible to encode the size of the array viewed by an ArrayView into the type itself: ArrayView<T, Size>. Such objects are lighter than ArrayView of arbitrary size and allows verification of the size at compile time.
This change also fix operator== and bring new make_ArrayView overloads.
2018-04-04 15:28:17 +01:00
Vincent Coubard
9e1f0b34f8
BLE: Fix byte_array_t subscript operator
2018-04-04 15:22:15 +01:00
Vincent Coubard
d8f3d9c5ef
BLE: provide non const overload of byte_array_t::data member function.
2018-04-04 15:21:54 +01:00
Vincent Coubard
bf41bb3164
BLE: Export byte_array_t size exploitable at compile time.
2018-04-04 15:21:05 +01:00
paul-szczepanek-arm
cbf80e9da5
typos, style and other review fixes
2018-04-03 15:41:43 +01:00
paul-szczepanek-arm
f5fee68f99
fixed naming for sig failure count
2018-04-03 15:41:43 +01:00
paul-szczepanek-arm
9283413c4c
count failures, trigger reparing when verification fails
2018-04-03 15:41:43 +01:00
paul-szczepanek-arm
780d8a4375
let the stack know whether csrk is authenticated
2018-04-03 15:41:43 +01:00
paul-szczepanek-arm
8d966dbe8c
invalid mic event
2018-04-03 15:41:43 +01:00
paul-szczepanek-arm
5ae9cc3b53
set peer csrk on pal
2018-04-03 15:41:43 +01:00
paul-szczepanek-arm
26b047549c
extra comments for api
2018-04-03 15:17:15 +01:00
paul-szczepanek-arm
0a494a0bbc
all_zeros now free functions
2018-04-03 14:47:27 +01:00
paul-szczepanek-arm
ba5b0f30d2
added comments about address for oob generation
2018-04-03 13:54:29 +01:00
paul-szczepanek-arm
3c1a5a4a56
incorrect retval usage fixed
2018-04-03 12:16:49 +01:00
Vincent Coubard
95cd37b491
BLE: Add const overload for byte_array_t subscribt operator.
2018-03-29 17:22:48 +01:00
Donatien Garnier
8b66c4bd28
[BLE] Fixed inconsistent casing issue for SecurityDb
2018-03-28 10:44:09 +01:00
paul-szczepanek-arm
aa90f0df65
rely solely on random vlalue to know if already calculating
...
simplify by setting a fake random value at the start so that first run is the same as subsequent runs
2018-03-27 12:25:50 +01:00
paul-szczepanek-arm
02ba2848a8
avoid recalculating oob fi already calculating
2018-03-26 17:48:32 +01:00
Vincent Coubard
db20ecbbde
Merge branch 'security-manager-dev' into oob-gen
2018-03-26 16:49:55 +01:00
paul-szczepanek-arm
98efb9da06
generate oob at will and without passing in connection handle
2018-03-23 18:31:27 +00:00
Vincent Coubard
e25d5c9aa3
BLE: qualification of SecurityManager types
2018-03-23 12:06:08 +00:00
paul-szczepanek-arm
909f9513cf
allow preloading legacy oob, generate tk
2018-03-22 12:01:34 +00:00
paul-szczepanek-arm
66867d4dd3
oob stored in generic and handed over to pal when requested
2018-03-16 14:48:04 +00:00
paul-szczepanek-arm
1521dee773
add doxygen comment about OOB deneration cause bu setOOBDataUsage
2018-03-09 18:06:56 +00:00
paul-szczepanek-arm
1f8c5c1231
fixed typos
2018-03-09 14:22:28 +00:00
paul-szczepanek-arm
b8ba99a184
handling OOB data generation and verification now pushed down to PAL level
2018-03-05 11:29:13 +00:00
Donatien Garnier
a3383c139b
Addressed Vincent's comments
2018-03-01 20:32:37 +00:00
paul-szczepanek-arm
ded1403399
security manager overview doc fixes
2018-03-01 19:55:44 +00:00
paul-szczepanek-arm
371f183a6a
added one more sequence diagram
2018-03-01 18:49:43 +00:00
paul-szczepanek-arm
1f52e42bcf
more detailed comment for confirmation request
2018-03-01 18:31:16 +00:00
paul-szczepanek-arm
e706b41ccf
removed redundant event for SC OOB request, fixed comments
2018-03-01 16:39:44 +00:00
Vincent Coubard
f0405690b7
BLE: Resolve issue with address type in advertising report.
2018-03-01 15:48:21 +00:00
paul-szczepanek-arm
392ee6ec7c
removed get encryption key size from API
2018-03-01 15:29:52 +00:00
Donatien Garnier
00df64b26c
Fixed PasskeyAscii constructor
2018-03-01 15:16:47 +00:00
Vincent Coubard
1170b3132d
BLE: Remove useless pal sm API
2018-03-01 14:46:12 +00:00
paul-szczepanek-arm
f9a79bed15
fixed initiator distribution bug and setting LINK distribution field based on SC
2018-02-28 17:43:54 +00:00
paul-szczepanek-arm
d20c4efbf3
documentation overview for securitymanager
2018-02-28 17:00:56 +00:00
paul-szczepanek-arm
701c18b428
missing documentation, removed privacy call from api
2018-02-28 13:49:51 +00:00
paul-szczepanek-arm
c52d324dab
pass in information about the mitm and sc quality of the ltk to the pal
2018-02-28 12:02:54 +00:00
paul-szczepanek-arm
975544f274
link key distribution decision made in generic security manager
2018-02-27 23:26:34 +00:00
paul-szczepanek-arm
96de1c2752
header guards renamed
2018-02-27 17:25:57 +00:00
paul-szczepanek-arm
e186985b26
addressing PR review: added documentation, moved code and renamed vars
2018-02-27 17:22:13 +00:00
paul-szczepanek-arm
fc01cff1b3
removed using statements from header
2018-02-27 12:25:01 +00:00
paul-szczepanek-arm
d264512c8c
remove virtual as per review request
2018-02-27 12:15:40 +00:00
Vincent Coubard
928dbcf325
BLE: Fix prefix of BLEProtocol::AddressType
2018-02-27 12:12:17 +00:00
paul-szczepanek-arm
957cee39fe
Merge branch 'master' of https://github.com/paul-szczepanek-arm/mbed-os
2018-02-27 11:57:20 +00:00
paul-szczepanek-arm
0f1fd58c38
removed MIC related functions and events from the user API
2018-02-27 11:57:16 +00:00
Vincent Coubard
0b0d614787
Merge branch 'master' of https://github.com/paul-szczepanek-arm/mbed-os into pr-sm
2018-02-27 11:54:32 +00:00
paul-szczepanek-arm
62e9011525
public key renaned (added coord), also contains missing commit for oob_rand rename
2018-02-27 11:50:04 +00:00
Vincent Coubard
361ae8c7a3
BLE: fix references to oob_rand_t.
2018-02-27 11:48:21 +00:00
paul-szczepanek-arm
4010bade89
reanmed type as per review request
2018-02-27 11:43:46 +00:00
paul-szczepanek-arm
4fd29630b3
removed redundant type
2018-02-27 11:23:22 +00:00
paul-szczepanek-arm
8142cb5131
redundant call removed
2018-02-27 10:45:31 +00:00
paul-szczepanek-arm
5de1979f5c
types renamed as per review requests
2018-02-27 10:33:35 +00:00
paul-szczepanek-arm
55106362f0
removed redundant type
2018-02-27 09:59:35 +00:00
paul-szczepanek-arm
c9690c9f59
upate doxygen since passkey is no longer a pointer
2018-02-27 09:22:36 +00:00
Vincent Coubard
3554a63dc8
BLE: Add default addressType to processAdvertisementReport
...
This patch should be reverted once the ST shield library and mbed-os-cliapp have been updated to support this change in the porting API.
2018-02-26 09:59:17 +00:00
Vincent Coubard
1f4e2b1820
BLE: Fix Gap::processAdvertisementReport documentation
2018-02-23 17:32:22 +00:00
Vincent Coubard
d586f7f9d2
BLE: update SecurityDB comments.
2018-02-23 13:54:41 +00:00
Vincent Coubard
1ded0d7198
BLE: Split security manager control block from the secure DB.
2018-02-23 11:15:08 +00:00
Vincent Coubard
2bb73fd8bb
BLE: Cleanup includes of pal::ConnectionEventMonitor.
2018-02-23 11:13:42 +00:00
Vincent Coubard
c5be493bb7
BLE: Add address type in AdvertisementCallbackParams_t.
2018-02-21 17:41:14 +00:00
Vincent Coubard
e3d7f2bb05
BLE: Add address type in AdvertisementCallbackParams_t.
2018-02-21 14:14:31 +00:00
paul-szczepanek-arm
c65419239f
fixed compiler errors for pal after its update
2018-02-20 18:01:21 +00:00
Vincent Coubard
4ce0ed9c0c
BLE: Remove dependency of GenericSecurityManager towards gap.
2018-02-19 17:46:41 +00:00
Vincent Coubard
28f2f46974
BLE: Hide event monitor inside pal.
2018-02-19 17:41:18 +00:00
Vincent Coubard
bcea06fb32
BLE: Fix inclusion of mbed_error.h
2018-02-19 17:32:10 +00:00
Vincent Coubard
cc896f1b52
BLE: Add mock for the security db.
2018-02-19 17:32:10 +00:00
paul-szczepanek-arm
dd7bc50e4b
Merge branch 'master' into palsm
2018-02-19 16:39:10 +00:00
paul-szczepanek-arm
ecacbda507
compiler errors fixed after the merge
2018-02-19 16:28:01 +00:00
paul-szczepanek-arm
8cf7b3b06f
Merge branch 'palsm' of https://github.com/paul-szczepanek-arm/mbed-os into palsm
2018-02-19 15:35:39 +00:00
paul-szczepanek-arm
d9156a28e2
connection monitor
2018-02-19 15:32:07 +00:00
Vincent Coubard
15cfcba16a
BLE: Move security DB into PAL.
2018-02-19 14:43:56 +00:00
Vincent Coubard
6529d677c1
BLE: Fix include prefixes.
2018-02-19 13:46:46 +00:00
paul-szczepanek-arm
2f1e211da1
set entry state on connect
2018-02-13 16:41:36 +00:00
paul-szczepanek-arm
d44af8c40a
don't handle event handler memory by the SM
2018-02-13 12:11:17 +00:00
paul-szczepanek-arm
55045010d6
fixed all the compilation errors and recent pal changes
2018-02-13 11:01:30 +00:00
paul-szczepanek-arm
35b4ae4bc7
typos
2018-02-12 14:42:31 +00:00
paul-szczepanek-arm
581b5755b8
removed duplicate event handler, removed redundant using statements
2018-02-12 13:40:04 +00:00
paul-szczepanek-arm
2c1fcc7235
style
2018-02-12 10:27:27 +00:00
paul-szczepanek-arm
90c30c9022
typo
2018-02-11 18:19:56 +00:00
paul-szczepanek-arm
c93e800eea
missing ref
2018-02-11 18:13:54 +00:00
paul-szczepanek-arm
934d8f9235
pointers changed to references for a consistent PAL
2018-02-11 18:08:21 +00:00
paul-szczepanek-arm
68db4dd52f
avoiding compiler issues
2018-02-11 15:37:23 +00:00
Vincent Coubard
2e64b710a1
Ble: fix size function in advertising_data_t and address_t.
2018-02-09 16:43:29 +00:00
paul-szczepanek-arm
e91ab466ea
doxygen added
2018-02-09 16:39:01 +00:00
paul-szczepanek-arm
18062fc9de
GAP integration for connection and disconnection events
2018-02-09 16:35:16 +00:00
paul-szczepanek-arm
769c97e32c
random data generation
2018-02-09 13:55:33 +00:00
paul-szczepanek-arm
fe9b558a2a
init random number on local device for OOB data
2018-02-09 13:29:37 +00:00
paul-szczepanek-arm
564749674f
cmac using the tls implementation
2018-02-09 12:54:08 +00:00
paul-szczepanek-arm
947c6ed239
implement oob data store in db
2018-02-09 11:11:35 +00:00
paul-szczepanek-arm
0806584e45
oob presence set correctly for legacy pairing
2018-02-09 10:52:39 +00:00
paul-szczepanek-arm
a2cff3079e
move oob to db, add cmac helper func
2018-02-08 21:48:43 +00:00
paul-szczepanek-arm
0a54ca39d0
move pairing under its own heading to match other parts
2018-02-08 18:41:35 +00:00
paul-szczepanek-arm
56530d4917
sc oob verification needs local random value
2018-02-08 18:35:02 +00:00
paul-szczepanek-arm
d061c89e31
storing sc oob, checking for its presence
2018-02-08 18:23:23 +00:00
paul-szczepanek-arm
cba77ad5d1
saving public keys
2018-02-08 16:36:06 +00:00
paul-szczepanek-arm
0b15798673
style and moved for clarity
2018-02-08 16:03:52 +00:00
paul-szczepanek-arm
b5b86b72fe
oob handling inside genric for secure connections
2018-02-08 15:17:12 +00:00
paul-szczepanek-arm
1b6a84d5a4
oob data propagated to pal
2018-02-07 10:16:44 +00:00
paul-szczepanek-arm
4c56f8980d
removed redundancy in types
2018-02-06 23:08:32 +00:00
paul-szczepanek-arm
8cc36650df
added OOB to interface, moved address type to common
2018-02-06 22:59:21 +00:00
paul-szczepanek-arm
b6be4df162
doxygen
2018-02-06 22:01:54 +00:00
paul-szczepanek-arm
1446142b60
ltk for secure connections
2018-02-06 21:50:57 +00:00
paul-szczepanek-arm
3236eada5e
multiple ltks single irk and csrk
2018-02-06 21:16:22 +00:00
paul-szczepanek-arm
7aa9ae7888
fix typos
2018-02-06 15:39:31 +00:00
paul-szczepanek-arm
aba65d7fd5
added doxygen
2018-02-06 14:32:47 +00:00
paul-szczepanek-arm
9bc8c56df3
address types added, secure connectins oob added
2018-02-06 10:17:31 +00:00
paul-szczepanek-arm
32e91ac168
removed idenitty list as resolution will be done insite the db asynchronously
2018-02-01 10:00:10 -06:00
paul-szczepanek-arm
f53359f60c
doxygen
2018-01-31 16:42:35 -06:00
paul-szczepanek-arm
132b9e01bf
fix encryption call to accept 16 octets
2018-01-31 16:23:45 -06:00
paul-szczepanek-arm
714069b965
deal with failed LTK retrieval, remove unused functionality, more doxygen
2018-01-31 14:16:56 -06:00
paul-szczepanek-arm
5498b79f55
doxygen, moved types to common
2018-01-31 12:06:01 -06:00
paul-szczepanek-arm
62502fe1c8
more doxygen and naming consistency
2018-01-31 11:27:32 -06:00
paul-szczepanek-arm
2060ad5df0
we don't need two event handler since now the generic security manager implements the interface
2018-01-30 17:01:30 -06:00
paul-szczepanek-arm
e686eec048
missing implementation for whitelist from bond table and more doxygen
2018-01-30 16:49:35 -06:00
paul-szczepanek-arm
322ee90797
doxygen fixes
2018-01-30 14:00:21 -06:00