Commit Graph

881 Commits (62a70f461b921b05ade3edc599fc6a01e558bc45)

Author SHA1 Message Date
Paul Szczepanek 381b99bc61
Merge pull request #25 from paul-szczepanek-arm/oob-gen
generate oob at will and without passing in connection handle
2018-04-03 15:30:21 +01:00
paul-szczepanek-arm 576796b289 reset OOB on use 2018-04-03 15:29:26 +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 3272863f83 BLE Nordic: Support LESC. 2018-03-29 17:24:46 +01:00
Vincent Coubard f0e18fa007 BLE: Add LESC crypto toolbox for Nordic. 2018-03-29 17:23:54 +01:00
Vincent Coubard 3218e79805 BLE: Fix reference to security manager in Nordic event handler. 2018-03-29 17:23:24 +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 c542650734 removed unused param from call 2018-03-26 18:07:29 +01:00
paul-szczepanek-arm e1885486fa only generate oob if using oob 2018-03-26 18:00:05 +01:00
paul-szczepanek-arm d1b4713ae6 removed redundancy 2018-03-26 17:53:40 +01:00
paul-szczepanek-arm 02ba2848a8 avoid recalculating oob fi already calculating 2018-03-26 17:48:32 +01:00
Vincent Coubard 87c2045f5e Merge branch 'security-manager-dev' of https://github.com/paul-szczepanek-arm/mbed-os into sc-nordic 2018-03-26 17:12:37 +01:00
Vincent Coubard db20ecbbde
Merge branch 'security-manager-dev' into oob-gen 2018-03-26 16:49:55 +01:00
Vincent Coubard 3579653533 Cordio: Implement missing functions for secure connection 2018-03-26 15:48:59 +01:00
Martin Kojtal afeb3066c3
Revert "BLE: Gatt client unit tests" 2018-03-26 11:51:29 +01:00
paul-szczepanek-arm 98efb9da06 generate oob at will and without passing in connection handle 2018-03-23 18:31:27 +00:00
Cruz Monrreal 387027dddb
Merge pull request #6086 from pan-/gatt-client-unit-tests
BLE: Gatt client unit tests
2018-03-23 10:56:09 -05:00
Vincent Coubard b859907481 Cordio: remove generate_public_key from the security manager. 2018-03-23 12:06:08 +00:00
Vincent Coubard 0a710e5331 BLE: Initialize the pal in GenericSecurityManager 2018-03-23 12:06:08 +00:00
Vincent Coubard e25d5c9aa3 BLE: qualification of SecurityManager types 2018-03-23 12:06:08 +00:00
Paul Szczepanek d7595803d0
Merge pull request #23 from paul-szczepanek-arm/legacy-oob
allow preloading legacy oob, generate tk
2018-03-23 10:48:11 +00:00
paul-szczepanek-arm 6833c79fb3 don't request encrypt when pending 2018-03-22 17:54:13 +00:00
paul-szczepanek-arm 81cb1f9c83 enable encryption for slave request added 2018-03-22 17:11:15 +00:00
paul-szczepanek-arm 350924129f fix the attempt oob flag if we receive oob 2018-03-22 12:32:01 +00:00
paul-szczepanek-arm 2b2d9a2453 reset pending state when attempt ends, added comments 2018-03-22 12:23:37 +00:00
paul-szczepanek-arm c848c79a5b avoid code redundancy 2018-03-22 12:10:21 +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
Vincent Coubard 5e8630dcc6 BLE Nordic: Complete implementation of pal security manager 2018-03-15 11:24:31 +00:00
Vincent Coubard 1638902341 BLE: Whitespace fix 2018-03-15 09:34:41 +00:00
Vincent Coubard 761beafeb3 BLE: Complete nRF5xGap initialization list 2018-03-15 09:34:21 +00:00
Vincent Coubard 288abf5287 BLE: Add nRF5x constructor 2018-03-15 09:33:25 +00:00
Vincent Coubard c3fd90430a BLE: Fix references to ConnectionEventMonitor::EventHandler 2018-03-15 09:32:58 +00:00
Vincent Coubard eb8ec9c22d Merge branch 'nordicpalsm' of https://github.com/donatieng/mbed-os into sc-cordio 2018-03-12 10:15:18 +00:00
paul-szczepanek-arm 1521dee773 add doxygen comment about OOB deneration cause bu setOOBDataUsage 2018-03-09 18:06:56 +00:00
Vincent Coubard 5a2008211a Cordio: Implement missing functions for secure connection 2018-03-09 18:06:22 +00:00
Vincent Coubard 38bee37804 Cordio: remove generate_public_key from the security manager. 2018-03-09 18:05:31 +00:00
Vincent Coubard 36ca6be69a BLE: Initialize the pal in GenericSecurityManager 2018-03-09 18:04:47 +00:00
Vincent Coubard bd7be3d643 BLE: qualification of SecurityManager types 2018-03-09 17:56:59 +00:00
paul-szczepanek-arm 19bb13c8c5 one last typo 2018-03-09 14:56:37 +00:00
paul-szczepanek-arm 1f8c5c1231 fixed typos 2018-03-09 14:22:28 +00:00
paul-szczepanek-arm 7c82e91981 fixed typo 2018-03-09 12:49:10 +00:00
jiangkun1994 af7c1c919d fixes a typo in README.md 2018-03-07 03:33:31 +08:00
jiangkun1994 5be35c92da fixes some typos in README.md 2018-03-07 03:27:45 +08: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
Donatien Garnier 713ab14d22 Removed deprecated Security Manager 2018-03-01 20:06:38 +00:00
paul-szczepanek-arm ded1403399 security manager overview doc fixes 2018-03-01 19:55:44 +00:00
Donatien Garnier 7b6b02a746 Nordic PAL - Breaks existing SM 2018-03-01 19:50:13 +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 68f25611d5 no need to ask for encryption after pairing, fold deref under the null check 2018-03-01 17:47:18 +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
Vincent Coubard 8e21b5391a Merge branch 'master' of https://github.com/paul-szczepanek-arm/mbed-os into pr-sm 2018-03-01 15:39:56 +00:00
Vincent Coubard 03f79eec39 BLE: Remove Nordic Pal SM draft. 2018-03-01 15:39:51 +00:00
paul-szczepanek-arm 392ee6ec7c removed get encryption key size from API 2018-03-01 15:29:52 +00:00
paul-szczepanek-arm 0870b30aa6 Merge branch 'master' of https://github.com/paul-szczepanek-arm/mbed-os 2018-03-01 15:18:00 +00:00
paul-szczepanek-arm b89f9f2482 added callback on encryption request even if lower and restructured for clarity 2018-03-01 15:17:36 +00:00
Donatien Garnier 00df64b26c Fixed PasskeyAscii constructor 2018-03-01 15:16:47 +00:00
Vincent Coubard e8f29f7327 BLE - Cordio - PAL SM: refine comments and formating. 2018-03-01 14:59:06 +00:00
Vincent Coubard 36247b32b8 BLE - Cordio PAL SM: Implement Keypress notification 2018-03-01 14:58:01 +00:00
Vincent Coubard 56af3cb1be CBLE - Cordio PAL SM: Implement slave security request notification 2018-03-01 14:57:05 +00:00
Vincent Coubard da6ede34a8 BLE - Cordio PAL SM: Select correct on_ltk_request overload. 2018-03-01 14:56:30 +00:00
Vincent Coubard 628ffea6de BLE - Cordio PAL SM: Forward local keys 2018-03-01 14:55:45 +00:00
Vincent Coubard 18c93990b6 BLE - Cordio PAL Sm: generate random passkey displayed. 2018-03-01 14:55:12 +00:00
Vincent Coubard ecc7118490 BLE - Cordio PAL SM: Implement send_keypress_notification 2018-03-01 14:54:06 +00:00
Vincent Coubard 9043714443 BLE - Cordio PAL SM: Select correct security level in enable_encryption 2018-03-01 14:53:33 +00:00
Vincent Coubard 79db2af488 BLE - Cordio PAL SM: Choose correct security level in set_ltk 2018-03-01 14:53:00 +00:00
Vincent Coubard 4858388672 BLE - Cordio PAL SM: comment get_authentication_timeout 2018-03-01 14:52:09 +00:00
Vincent Coubard 054b7808b4 BLE - Cordio PAL SM: implement set_authentication_timeout 2018-03-01 14:51:43 +00:00
Vincent Coubard a057e5c0d2 BLE - Cordio PAL SM: Fix force secure connection. 2018-03-01 14:50:31 +00:00
Vincent Coubard cd7d9c551c Cordio pal SM: comment appropriately privacy related functions. 2018-03-01 14:47:46 +00:00
Vincent Coubard 1170b3132d BLE: Remove useless pal sm API 2018-03-01 14:46:12 +00:00
Vincent Coubard e29ea95fc9 BLE: Return error when security deascalation is requested. 2018-03-01 14:44:18 +00:00
paul-szczepanek-arm 7e2f5ee008 fix not setting the mitm performed state correctly 2018-03-01 14:25:22 +00:00
paul-szczepanek-arm bc11834125 fix not setting encryption state in generic 2018-03-01 13:59:19 +00:00
paul-szczepanek-arm d5b8439bae removed redundant check
we already checked the current encryption and it is encrypted
2018-03-01 13:03:49 +00:00
paul-szczepanek-arm 179ad1626f Merge branch 'master' of https://github.com/paul-szczepanek-arm/mbed-os 2018-03-01 12:56:33 +00:00
paul-szczepanek-arm cebc0f8fd7 create encryption result event even when nothing changes 2018-03-01 12:56:29 +00:00
Vincent Coubard c00ae29ca7 Cordio: Update stack binaries.
New binaries contains a fix in configuration handling.
2018-03-01 11:01:19 +00:00
Vincent Coubard d050c4e4af BLE: Fix CordioPalSM set_io_capability 2018-03-01 10:24:13 +00:00
Vincent Coubard dbf4a8da49 BLE: Implement CordioSM get_secure_connection_support. 2018-03-01 10:22:42 +00:00
Vincent Coubard 766b8765ad BLE: Accept pairing request when the user authorization is not required. 2018-03-01 10:21:35 +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 abcc5db44b fix setting default values which were overriding even when unset 2018-02-28 10:00:58 +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 8e41de2e25 Merge branch 'master' of https://github.com/paul-szczepanek-arm/mbed-os 2018-02-27 17:23:25 +00:00
paul-szczepanek-arm e186985b26 addressing PR review: added documentation, moved code and renamed vars 2018-02-27 17:22:13 +00:00
Vincent Coubard 81126ad7ce BLE: remove draft of nordic pal security manager. 2018-02-27 14:35:56 +00:00
Vincent Coubard bf8204a21b BLE: remove host testing from sm pr 2018-02-27 13:42:03 +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
paul-szczepanek-arm 536f541b93 mic event no longer present in user api, removing call 2018-02-27 12:13:48 +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
Vincent Coubard 871ebb6708 BLE: Add host test instructions. 2018-02-27 11:19:59 +00:00
Vincent Coubard c6bca57633 BLE: Improve generic gatt client tests documentation. 2018-02-27 11:15:48 +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 b0c7d729fc variable name updated in the undefed cmac blocks 2018-02-27 10:00:07 +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 47eea76c03 BLE: Test db entry open and close in the generic security manager. 2018-02-27 09:00:26 +00:00
Vincent Coubard 7833d798da BLE: Fix security manager mocks 2018-02-27 09:00:26 +00:00
Vincent Coubard b939721421 BLE: Ensure passkey is not null before integer conversion 2018-02-27 09:00:26 +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 47e005e14c
BLE: Fix address report in Maxim port. 2018-02-23 15:50:34 +00:00
Vincent Coubard d586f7f9d2 BLE: update SecurityDB comments. 2018-02-23 13:54:41 +00:00
Vincent Coubard 11a809ee1c BLE: remove MorySecurityDb include from generic security manager. 2018-02-23 11:19:21 +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 52910af33e BLE: Add mock for SecurityManagerEventHandler. 2018-02-23 11:13:42 +00:00
Vincent Coubard 7db6aeb19b BLE: Add mock and stub for ConnectionEventMonitor. 2018-02-23 11:13:42 +00:00
Vincent Coubard 2bb73fd8bb BLE: Cleanup includes of pal::ConnectionEventMonitor. 2018-02-23 11:13:42 +00:00
paul-szczepanek-arm 02f01f0e1d Merge branch 'palsm' of https://github.com/paul-szczepanek-arm/mbed-os into palsm 2018-02-22 11:53:00 +00:00
Vincent Coubard 1698c2d5be BLE: Add missing encryption implementation in cordio pal SM. 2018-02-22 11:51:02 +00:00
paul-szczepanek-arm 1da5d74470 temporary key encryption mitm quality reflected 2018-02-22 11:50:11 +00:00
paul-szczepanek-arm 6b0ba64ee2 SM fixes to init and register the event handler correctly 2018-02-21 18:35:44 +00:00
Vincent Coubard 9e98a72198 BLE: Move cordio default scan and connection params in global memory. 2018-02-21 17:43:39 +00:00
Vincent Coubard ad78b3e023 BLE: Handle NULL parameters in Gap::connect. 2018-02-21 17:43:38 +00:00
Vincent Coubard 9c6f44de91 BLE: Force stop scan before connection initiation. 2018-02-21 17:43:38 +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 8b9e08e128 BLE tests: Add stub for device.h . 2018-02-19 17:32:10 +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 396ca2ca20 removed redundant cast 2018-02-19 17:29:45 +00:00
paul-szczepanek-arm 990e21247c pull in cordio security manager into BLE 2018-02-19 17:26:24 +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 9b12c6b11d BLE: Add SecurityManager tests to the build script. 2018-02-19 14:44:30 +00:00
Vincent Coubard 15cfcba16a BLE: Move security DB into PAL. 2018-02-19 14:43:56 +00:00
Vincent Coubard c7672994d2 BLE tests: Mock pal::SecurityManager. 2018-02-19 14:34:07 +00:00
Vincent Coubard 6529d677c1 BLE: Fix include prefixes. 2018-02-19 13:46:46 +00:00
Vincent Coubard 863bdfbb75 BLE: Add unit test for the Generic GattClient.
These tests are build around gtest and gmock and solely run on a host; cmake is
used as a build system:

- cd features/FEATURE_BLE/tests
- mkdir build
- cd build
- cmake ..
- make
- ./gatt-client-tests
2018-02-19 13:23:23 +00:00
Andrew Leech d001fb1c66 Avoid importing <memory> as this causes a typedef conflict on `error_t` whien compiling with gcc "-std=gnu++11" or above 2018-02-16 12:10:44 +11:00
Vincent Coubard aeb992ee3c BLE: Add unit test for the Generic GattClient.
These tests are build around gtest and gmock and solely run on a host; cmake is
used as a build system:

- cd features/FEATURE_BLE/tests
- mkdir build
- cd build
- cmake ..
- make
- ./gatt-client-tests
2018-02-13 17:01:25 +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 379c86dd66
Merge pull request #11 from pan-/palsm-orig
Cordio update
2018-02-09 16:40:16 +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 e7cf1529ec remobed todo, will be handled by db 2018-02-09 14:21:24 +00:00
paul-szczepanek-arm e0c308f8f2 fix buffer not being moved in random number generation 2018-02-09 13:59:03 +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 20444c8dd7 missing implementations 2018-02-07 08:59:48 +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
paul-szczepanek-arm 9e79ba4ee4 doxygen 2018-01-30 11:27:12 -06:00
paul-szczepanek-arm faf134ae60 move helper funcitons under their own heading 2018-01-29 17:16:47 -06:00
paul-szczepanek-arm 9786244386 removed redundant const 2018-01-29 16:00:53 -06:00
paul-szczepanek-arm d0c4186b9e moved fucntion impl to match position in header 2018-01-29 21:20:15 +00:00
paul-szczepanek-arm eb899bc798 split identity away from meta data and csrk, moved privacy feature from db to security manager 2018-01-29 21:10:08 +00:00
paul-szczepanek-arm f4d29bbef6 clear up private address resolution 2018-01-29 19:22:08 +00:00
paul-szczepanek-arm 647aa1eebe split security manager into a header and moved types to common types
plus a bit of extra doxygen comments
2018-01-29 17:57:00 +00:00
paul-szczepanek-arm ed0722c303 upgraded oob data to octet type 2018-01-28 10:08:15 +00:00
paul-szczepanek-arm 724aef96a3 moved types to common header 2018-01-28 07:07:54 +00:00
paul-szczepanek-arm 1cc5312d1e octet type for keys 2018-01-24 10:22:53 +00:00
paul-szczepanek-arm 38f8a5b8d5 separate live state from stored state in entry 2018-01-23 17:01:44 +00:00
paul-szczepanek-arm 8ef3311be0 naive memory implementation for verification purposes 2018-01-23 16:01:54 +00:00
paul-szczepanek-arm c476fceba3 correct naming for private members 2018-01-23 15:36:57 +00:00
paul-szczepanek-arm 92965baaa8 removed redundant mitm field 2018-01-23 12:27:03 +00:00
paul-szczepanek-arm 56ea4202d7 read mitm of the csrk key not pairing 2018-01-23 12:21:32 +00:00
paul-szczepanek-arm bc1e809ca3 keeping state of connection, storing mitm quality of keys 2018-01-23 12:20:12 +00:00
paul-szczepanek-arm f635555a74 refresh not needed, done through requesting encryption on encrypted link 2018-01-23 12:19:38 +00:00
paul-szczepanek-arm f1044fe2b6 internal function naming 2018-01-23 11:25:28 +00:00
paul-szczepanek-arm 4aa7158c4b temporary code for use during verification before we integrate with gap 2018-01-23 10:47:16 +00:00
paul-szczepanek-arm 10b5e648fd slave request handling 2018-01-22 21:01:05 +00:00
paul-szczepanek-arm 8b84b93b2c fix to apply defaults for pairing response 2018-01-22 17:32:13 +00:00
paul-szczepanek-arm 2b7db78d7b pairing through a single function to keep settings 2018-01-22 17:27:01 +00:00
paul-szczepanek-arm b4e85b3d06 moved db into its own file 2018-01-22 16:50:15 +00:00
paul-szczepanek-arm 2d8451f770 block legacy pairing when requested 2018-01-22 16:39:41 +00:00
paul-szczepanek-arm 305975b15a hint role reversal, set the correct ltk keys 2018-01-22 16:21:30 +00:00
paul-szczepanek-arm 69aac8abee const fix 2018-01-22 14:55:49 +00:00
paul-szczepanek-arm 2ae05ea6aa enabling signing 2018-01-22 14:54:17 +00:00
paul-szczepanek-arm 1208dc7c34 readability 2018-01-22 14:37:34 +00:00
paul-szczepanek-arm 533f6a464a restructure cases to avoid warnings 2018-01-22 14:35:02 +00:00
paul-szczepanek-arm 4c56d4c90b returning ref to array for csrk 2018-01-22 14:30:22 +00:00
paul-szczepanek-arm cba92fe82c db changes to suport peer and local keys 2018-01-22 14:11:22 +00:00
paul-szczepanek-arm 5e0ed3db01 pul events to retrieve local ltk edvi rand 2018-01-22 13:50:30 +00:00
paul-szczepanek-arm d1c29faaa8 added slave security request 2018-01-22 11:49:42 +00:00
paul-szczepanek-arm 3300395468 missing init, removed redeclaration 2018-01-22 09:57:35 +00:00
paul-szczepanek-arm d880f6238d encryption needs ltk rand and ediv 2018-01-21 22:57:05 +00:00
paul-szczepanek-arm e301f7a1c3 removed redundant checks 2018-01-21 21:43:02 +00:00
paul-szczepanek-arm 9be7dbef78 mitm quality added 2018-01-21 19:54:41 +00:00
paul-szczepanek-arm 0ef6740fc3 line wrap 2018-01-21 19:41:18 +00:00
paul-szczepanek-arm e2a4c08d1f set link security and set link ecryption added 2018-01-21 19:38:36 +00:00
paul-szczepanek-arm 4820d64b9a moved signing to matching positin in file 2018-01-21 18:47:06 +00:00
paul-szczepanek-arm b20a49f7a3 only one key distribution settings 2018-01-21 18:45:31 +00:00
paul-szczepanek-arm 7f90c7c889 signing enabling 2018-01-21 18:26:35 +00:00
Vincent Coubard 7b169997c8 BLE Cordio: partial implementation of set ltk. 2018-01-19 18:49:39 +00:00
Vincent Coubard a849f7f433 BLE Cordio: Enable handling of security. 2018-01-19 18:42:59 +00:00
paul-szczepanek-arm 467b36eaaf get link security no longer needed in generic 2018-01-19 17:57:55 +00:00
paul-szczepanek-arm f18af9f54d retrieving signing key 2018-01-19 17:55:53 +00:00
paul-szczepanek-arm ad8dd5fb2c fix wrap 2018-01-19 16:53:10 +00:00
paul-szczepanek-arm 0367cebaa2 vincent style wrapping 2018-01-19 16:52:17 +00:00
paul-szczepanek-arm cb660985a2 get rid of all the virtual warnings and fix enum types 2018-01-19 16:41:18 +00:00
paul-szczepanek-arm e100f7c01f returning csrk key, init distribution list 2018-01-19 16:20:37 +00:00
paul-szczepanek-arm 9fda5550db missing conn handle 2018-01-19 16:19:33 +00:00
paul-szczepanek-arm 3074d12ff1 security mode split into encryption and signing key 2018-01-19 15:56:18 +00:00
paul-szczepanek-arm ebe2439ff7 move deprecated funcs down, add replacement for encryption status 2018-01-19 14:58:07 +00:00
Vincent Coubard 818ec8c8ec BLE SM: Align CordioPalSecurityManager with PalSecurityManager and fill the blanks 2018-01-19 14:36:55 +00:00
Vincent Coubard 4fcb304f27 BLE SM: Fix rand end ediv length 2018-01-19 14:36:54 +00:00
paul-szczepanek-arm 49e1fc3932 moving pairing to its own group to match the other layers 2018-01-19 14:24:28 +00:00
Vincent Coubard 888a050381 BLE SM: Slight API adjustements and docs 2018-01-19 12:22:51 +00:00
paul-szczepanek-arm 4fb9593f9f removed todo 2018-01-19 12:13:09 +00:00
paul-szczepanek-arm 5fcf2a6cfb Merge branch 'palsm' of https://github.com/paul-szczepanek-arm/mbed-os into palsm 2018-01-19 11:40:29 +00:00
paul-szczepanek-arm 9e3797cb3c timeout pal funcs combined into single result on api side 2018-01-19 11:38:42 +00:00
Vincent Coubard 44a366d103 BLE SM: Fix compilation errors 2018-01-19 11:30:27 +00:00
paul-szczepanek-arm 8b36d5ed65 fixed non-matching types 2018-01-19 10:44:48 +00:00
paul-szczepanek-arm c3b434b3a2 fixed pal name of oob request 2018-01-19 10:40:59 +00:00
paul-szczepanek-arm b60a464785 constness and refs fixes 2018-01-19 10:38:27 +00:00
paul-szczepanek-arm ab056aa17e set io caps, removed redundant params from pairing request 2018-01-19 10:30:38 +00:00
paul-szczepanek-arm 081b99e80a link security reading from db to determine stats 2018-01-18 23:33:19 +00:00
paul-szczepanek-arm 2fe405a2a8 propagated changes from pal to api and generic 2018-01-18 20:14:35 +00:00
paul-szczepanek-arm 9c1444f49c dropped redundant passkey num class 2018-01-18 20:13:49 +00:00
paul-szczepanek-arm 021a1fdf76 io caps and key size now stored by stack, secured cahgned to encrypted, moved passkey classes to pal 2018-01-18 17:40:08 +00:00
paul-szczepanek-arm 82c0847ab8 missed one pointer to pointer 2018-01-18 17:24:10 +00:00
paul-szczepanek-arm b88a2700de fixed the pointers to pointers 2018-01-18 17:23:31 +00:00
paul-szczepanek-arm b63930f53f fixed refs to arrays 2018-01-18 17:21:59 +00:00
paul-szczepanek-arm 3f26435ad9 pariring typo 2018-01-18 17:20:43 +00:00
paul-szczepanek-arm 779d6eb7ae updated old key_ditribution type and fixed refs to pointers 2018-01-18 17:19:59 +00:00
paul-szczepanek-arm dee47771fd updated implementations with new classes for auth and distribution masks 2018-01-18 15:42:50 +00:00
paul-szczepanek-arm 73e5f2d655 removed old events that are now only in legacy handling 2018-01-18 14:38:25 +00:00
paul-szczepanek-arm 01cdceb97f key distribution now a class 2018-01-18 12:08:33 +00:00
Paul Szczepanek 5a056a1351
Merge pull request #7 from pan-/palsm-cordio-implementation
Palsm cordio and Nordic implementation
2018-01-18 10:20:32 +00:00
paul-szczepanek-arm 25107b1ad8 todo 2018-01-17 22:19:45 +00:00
paul-szczepanek-arm 8db6427fde use common io caps type 2018-01-17 21:40:06 +00:00
paul-szczepanek-arm b00b746aa0 removed old type 2018-01-17 21:27:06 +00:00
paul-szczepanek-arm 2f04aece23 shared types in common header, connected up the events in handlers 2018-01-17 21:22:48 +00:00
Vincent Coubard 743e57ffaa Nordic BLE: Draft SM event handler. 2018-01-17 18:37:48 +00:00
Vincent Coubard 7e37cc739f Nordic BLE: SM pal function draft (legacy pairing) 2018-01-17 18:37:48 +00:00
Vincent Coubard 5277f5a0fd BLE: Fix signature of get_secure_connections_support in implementations. 2018-01-17 18:37:48 +00:00
Vincent Coubard 527a31663c BLE - Nordic: Add Skeleton for the security manager 2018-01-17 18:37:48 +00:00
Vincent Coubard ffb59eecb8 CORDIO BLE: Add PAL SM event handling (draft). 2018-01-17 18:37:47 +00:00
paul-szczepanek-arm 2fb67d2c7d authentication mask now a class, pairing and authenticating 2018-01-17 15:39:29 +00:00
paul-szczepanek-arm 49df59ebc1 deref pointer 2018-01-17 13:26:37 +00:00
paul-szczepanek-arm 42eeacbe7c remove redundant func 2018-01-17 13:15:15 +00:00
paul-szczepanek-arm 8197f09bd5 acoid creattion of passkey object to do the conversion 2018-01-17 12:38:35 +00:00
paul-szczepanek-arm 1a7e3faa18 fixed passkey classes 2018-01-17 12:28:48 +00:00
paul-szczepanek-arm 6420465c29 fix func calls args 2018-01-17 11:40:32 +00:00
paul-szczepanek-arm a3cf83ac02 key distribution 2018-01-17 11:38:36 +00:00
Vincent Coubard e2a2582549 BLE: Fix inclusion of BLE.h (case) 2018-01-17 11:31:50 +00:00
paul-szczepanek-arm 44f2f7b9d7 expose get number to avoid implicit casts for clarity 2018-01-17 11:25:32 +00:00
paul-szczepanek-arm 1bf0d7b921 display passkey handling, added null check to passkey contructor 2018-01-17 11:09:54 +00:00
paul-szczepanek-arm 00b1b17e62 removed broken assignment operator 2018-01-17 11:04:37 +00:00
paul-szczepanek-arm f8c9fe7329 get sc support in pal to match api 2018-01-17 10:52:24 +00:00
paul-szczepanek-arm d6a3347443 default state for legeacy pairing alllowed, removed obsolete code 2018-01-17 10:49:35 +00:00
paul-szczepanek-arm 9c6f57a733 name clash fixed 2018-01-17 10:48:07 +00:00
paul-szczepanek-arm 943206dd07 db restoring, legacy pairing disallowing, removed set SC support 2018-01-17 10:46:56 +00:00
paul-szczepanek-arm 11874aac3b whitelist generations needs to be async 2018-01-17 10:30:34 +00:00
paul-szczepanek-arm dcce428c40 conversion of passkeys, uniform calls 2018-01-16 19:39:25 +00:00
paul-szczepanek-arm c03c7fc587 Merge branch 'palsm' of https://github.com/paul-szczepanek-arm/mbed-os into palsm 2018-01-16 19:38:44 +00:00
Cruz Monrreal 671c2d7e90
Merge pull request #5346 from scartmell-arm/feature-hal-spec-critical-section
Add Critical Section HAL API specification
2018-01-16 12:49:38 -06:00
paul-szczepanek-arm 53f0b6a187 keypress notification setting 2018-01-16 18:16:15 +00:00
Vincent Coubard 9bd0fa5708 BLE Cordio: Fix call to SafeEnum<>::value() 2018-01-16 18:11:38 +00:00
Vincent Coubard e4b5681563 Cordio: Add SecurityManager singleton 2018-01-16 18:09:35 +00:00
Vincent Coubard c3c24d8641 Cordio: Implementation of base functions necessary for legacy pairing. 2018-01-16 18:04:40 +00:00
Vincent Coubard 0cd4f93041 Add skeleton of the PalSecurityManager for the Cordio Stack. 2018-01-16 17:19:26 +00:00
Vincent Coubard 6aa3d35d82 Set virtual specifier to on_keys_distributed . 2018-01-16 17:18:49 +00:00
paul-szczepanek-arm 83d582827d legacy pairing support call in api 2018-01-16 14:48:08 +00:00
paul-szczepanek-arm e02ae313ac added on_ prefixes, added split key distribution 2018-01-16 12:46:59 +00:00
paul-szczepanek-arm f9ed3b2456 passkey types fixed 2018-01-16 12:43:25 +00:00
Paul Szczepanek cc41857ab6
Merge pull request #3 from pan-/palsm-interface-improvement
Palsm interface improvement
2018-01-16 12:38:27 +00:00
paul-szczepanek-arm f93ed1087d split keys dsitribution, unirm on_ prefix, docs 2018-01-16 12:22:12 +00:00
Vincent Coubard f71490b59b Merge with palsm. 2018-01-16 12:19:41 +00:00
Vincent Coubard 75c7460575 Remove setPinCode function (not needed) and oob related functions. 2018-01-16 12:13:14 +00:00
Vincent Coubard 323bae44e1 Fixe compilation errors 2018-01-16 12:12:30 +00:00
Vincent Coubard 4df41f3ee8 Add mention of function that sets a default passkey. 2018-01-16 12:11:04 +00:00
paul-szczepanek-arm f33d93345b random data request 2018-01-16 11:50:49 +00:00
Vincent Coubard 9d08b2ddb3 Fixes:
* replace invalid using statement by typedef
* replace SecurityIOCapabilities_t by io_capability_t in send_pairing_response
* fix failure type in cancel_pairing
2018-01-16 11:29:38 +00:00
paul-szczepanek-arm 8e89dfbbfd redundant types removed 2018-01-16 11:23:36 +00:00
Vincent Coubard aede2a5680 Move ::SecurityManagerEventHandler and ::LegacySecurityManagerEventHandler into ::SecurityManager .
Fixes access right and compilation error.
2018-01-16 11:23:33 +00:00
paul-szczepanek-arm 4d3a4c530d removed bredr oob 2018-01-16 11:21:45 +00:00
paul-szczepanek-arm daab0b4fe1 fix error type name and unified connection handle name 2018-01-16 11:15:39 +00:00
paul-szczepanek-arm 52669fff98 match accept pairing with request pairing 2018-01-16 11:10:03 +00:00
Vincent Coubard d3ca4a9cb3
Merge branch 'palsm' into palsm-interface-improvement 2018-01-16 10:23:45 +00:00
paul-szczepanek-arm b95943b28e added more missing implementations for generic
removed virtual keyword since this is implementation
2018-01-15 22:32:57 +00:00
paul-szczepanek-arm 4dd5e7d124 match generic sm order with the rest, added missing set secure funcs 2018-01-15 22:17:05 +00:00
paul-szczepanek-arm a5d98d9c66 rearrange security manager so it matches pal, insert missing paring funcs 2018-01-15 22:05:44 +00:00
paul-szczepanek-arm 585f60d1fc missing irk added, authorisation for pairing optional, minor cleanup of names 2018-01-15 21:46:02 +00:00
paul-szczepanek-arm c86d13a7cc removed redundant param from pair req 2018-01-15 21:44:54 +00:00
paul-szczepanek-arm b818b87965 remove redundant pal api calls 2018-01-15 20:22:13 +00:00
Vincent Coubard e78840427a Add few new types.
Remove c192, r192, c256 and r256 references.
Refactor function names
2018-01-15 19:42:32 +00:00
paul-szczepanek-arm 92a83cf526 generic security manager implements the pal handler, added first db entry handler 2018-01-15 19:02:53 +00:00
paul-szczepanek-arm f308702b1d split security entry 2018-01-15 18:14:39 +00:00
Vincent Coubard 03f07bb7ce Refactor resolving list management.
Use address type from gap rather than BLEProtocol::AddressBytes_t .
2018-01-15 15:05:50 +00:00
Vincent Coubard 81904fd867 Remove bonded list storage from the adaptation layer.
Such processing should be handled at the upper layer.

Initiating encryption of a given connection should be made with the start
encryption command. This command accepts the parameters Rand, EDIV and
LTK.

A request of encryption request generate an LTK request event that is
forwarded to the upper layer which then reply with the LTK presents in the
Security DB or reject the request.
2018-01-15 14:36:32 +00:00
Vincent Coubard be664d1c33 Remove whitelist management: already present in the gap addaptation layer. 2018-01-15 14:32:12 +00:00
Vincent Coubard 1ee56f6b83 Convert SecurityManagerEventHandler into a pure interface.
Convert most functions of SecurityManager into virtual pure functions.
Protect access to the get_event_handler function and remove function set_app_event_handler.
2018-01-15 14:25:27 +00:00
paul-szczepanek-arm 2f49b66c52 callbacks allow updates 2018-01-15 11:45:52 +00:00
paul-szczepanek-arm 145fcc5791 security db iface draft 2018-01-15 08:31:33 +00:00
Daniel Schuler 271b09cda6 Add presentation format descriptor support for NRF52 2018-01-13 15:49:40 -08:00