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
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
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
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
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
581b5755b8
removed duplicate event handler, removed redundant using statements
2018-02-12 13:40:04 +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
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
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
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
8cc36650df
added OOB to interface, moved address type to common
2018-02-06 22:59:21 +00:00
paul-szczepanek-arm
1446142b60
ltk for secure connections
2018-02-06 21:50:57 +00:00
paul-szczepanek-arm
7aa9ae7888
fix typos
2018-02-06 15:39:31 +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
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
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
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
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
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
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
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
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
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
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
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
779d6eb7ae
updated old key_ditribution type and fixed refs to pointers
2018-01-18 17:19:59 +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
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
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
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
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
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
Vincent Coubard
323bae44e1
Fixe compilation errors
2018-01-16 12:12:30 +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
585f60d1fc
missing irk added, authorisation for pairing optional, minor cleanup of names
2018-01-15 21:46:02 +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
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
paul-szczepanek-arm
ce6f032970
pairing params added
2018-01-12 12:41:43 +00:00
paul-szczepanek-arm
a45237dc51
split interfaces
2018-01-11 18:45:27 +00:00
Cruz Monrreal
dc87f0b1e6
Merge pull request #5313 from pan-/ble-cordio-pal-gap
...
Cordio: Pal Gap implementation
2018-01-11 10:35:42 -06:00
Cruz Monrreal
b32828bc37
Merge pull request #5739 from pan-/nordic-new-client
...
BLE: Nordic pal client implementation
2018-01-11 10:26:47 -06:00
paul-szczepanek-arm
8a0aba398b
boilerplate
2018-01-11 13:17:47 +00:00
paul-szczepanek-arm
da3ecfc2e4
add keysize set and split up settings
2018-01-11 11:54:21 +00:00
paul-szczepanek-arm
827af85476
fixed call
2018-01-10 18:01:41 +00:00
paul-szczepanek-arm
1e3c1a96ec
fixed deafult event handler init and reset
2018-01-10 15:12:59 +00:00
Vincent Coubard
d33b02818a
BLE: Implement Generic GattClient reset logic.
2018-01-10 14:31:52 +00:00
Vincent Coubard
29988d5265
BLE: Align naming of GattClient procedure control blocks.
2018-01-10 14:18:00 +00:00
Vincent Coubard
3061db271d
BLE: Put generic gattclient procedures inside the GattClient class
2018-01-10 14:15:08 +00:00
paul-szczepanek-arm
67d1148a56
added timeout changed pointers to refs
2018-01-09 16:55:12 +00:00
paul-szczepanek-arm
9863d71f44
requesting pair, force sc option
2018-01-07 22:22:55 +00:00
paul-szczepanek-arm
e1676dc1cc
added MITM to user facing security manager api
2018-01-05 17:32:49 +00:00
paul-szczepanek-arm
e75042e3e4
handle legacy callbacks
...
this way you can have both old porting code and new app code and new porting code and old app code and they both work
2018-01-04 15:08:40 +00:00
paul-szczepanek-arm
69b248ae68
generic security manager using the pal
2018-01-03 18:04:22 +00:00
Vincent Coubard
70e5a14a4d
BLE: Generic Gap - fix address management.
2017-12-21 17:39:25 +00:00
Vincent Coubard
1b7a3ffa02
BLE: Add generic GAP implementation.
...
Generic implementation of the GAP class. It allows porters to have a working Gap
implementation by implementing the following abstraction layer primitives:
- pal::Gap: Adaptation for GAP related primitives.
- pal::EventQueue: simple interface to the inner event queue of the stack.
pal::SimpleEventQueue can also be used as an implementation.
- pal::GenericAccessService: Accessors to the Generic Access Service present in
the GATT server.
2017-10-31 17:39:14 +00:00
Vincent Coubard
daaa5b1977
BLE: Introduce GenericGattClient and platform abstraction over ATT/GATT.
...
This changes introduce a platform adaptation over ATT/GATT that can be implemented by porter.
Unlike the GattClient interface, the ATT/GATT adaptation is simple, follow closely the Bluetooth specification and won't change over time.
Implementation of the GattClient interface is realized by the class GenericGattClient which accept in input a pal::GattClient.
This change will also free design space once adopted by partners, addition to the GattClient interface won't require partner support.
2017-09-26 15:20:15 +01:00