Hugues Kamba
0ddc75a8f6
CMake: Fix BLE private address linker error
...
List newly added files in CMake input source files.
2020-11-06 17:25:22 +00:00
Hugues Kamba
fa98689639
CMake: Componentize Mbed OS into multiple CMake targets ( #13732 )
...
Aside from the core mbed-os CMake target, a number of targets have been created so they can optionally be included by application executables that require them using `target_link_libraries()`.
Co-authored-by: Martin Kojtal <martin.kojtal@arm.com>
Co-authored-by: Rajkumar Kanagaraj <rajkumar.kanagaraj@arm.com>
2020-11-06 17:25:21 +00:00
Hugues Kamba
e22b19d6db
CMake: Fix build failure due to BLE dir changes
2020-11-06 17:25:21 +00:00
Martin Kojtal
c29a2e2338
Merge pull request #13811 from pan-/ble-conditional-compilation
...
Ble conditional compilation
2020-11-06 16:11:10 +00:00
Paul Szczeanek
34c75ffb45
fix wrong advertising set handle being passed to handler
2020-10-28 08:42:58 +00:00
Paul Szczeanek
9e509f435b
fix incorrect parameter check in periodic advertising
2020-10-27 15:09:30 +00:00
Vincent Coubard
87ea47f211
BLE: Refactor Gap::reset to make it more readable
2020-10-27 14:22:54 +00:00
Vincent Coubard
557eac0617
BLE: Conditional compilation of the security manager
...
Depends on the role (central or peripheral), signing enabled and secure connection enabled.
2020-10-23 16:19:38 +01:00
Vincent Coubard
2e859cdab4
BLE: Conditionally compile PAL depending on the feature selected.
...
Previously (most) of the code was not pulled in because the pal interface was not virtual.
2020-10-23 12:17:31 +01:00
Paul Szczeanek
934e111107
fix advertising report not terminating early for unwanted reports
2020-10-19 15:47:40 +01:00
Paul Szczeanek
2c906110fc
missing host resolution for rpa when extended advertising is available
2020-10-19 15:47:39 +01:00
Paul Szczeanek
0931709516
replace current bool state combination for keeping track of ble scanning with an enum that covers all states
2020-10-19 15:47:39 +01:00
Paul Szczeanek
119d459361
fix removed friend function
2020-10-14 09:58:11 +01:00
Paul Szczeanek
9f09bb4956
rename private address controller to match security manager
2020-10-13 17:40:37 +01:00
Paul Szczeanek
3f9798b52d
Fix conditional compilation based on config
2020-10-13 17:32:49 +01:00
Vincent Coubard
f32141a051
BLE: Notify application when advertising start or stop
...
Applicable for legacy and extended advertising.
2020-10-05 11:54:05 +01:00
Paul Szczeanek
6ee5740941
use _initiating to block scan manipulation
2020-10-05 11:54:05 +01:00
Paul Szczeanek
f0bbc4c7ae
use enum for state
2020-10-05 11:54:05 +01:00
Paul Szczeanek
b0086919ed
scan forever and allow cancellation
2020-10-05 11:54:05 +01:00
Paul Szczeanek
18c218b027
allow host resolved address to be used for connection
2020-10-05 11:54:04 +01:00
Vincent Coubard
bb35cba134
BLE: Add function to signal privacy initialization.
2020-10-05 11:54:04 +01:00
Paul Szczeanek
5216a9aa8c
only apply policy if privacy enabled
2020-10-05 11:54:04 +01:00
Paul Szczeanek
d4360383e1
do not reject conn if no bond
2020-10-05 11:54:04 +01:00
Paul Szczeanek
b67230cbdb
apply peripheral policy on ll privacy
2020-10-05 11:54:04 +01:00
Paul Szczeanek
ec2808be31
filter based on resolving list size
2020-10-05 11:54:04 +01:00
Paul Szczeanek
03cc0f9940
host privacy config option to enable it
2020-10-05 11:54:04 +01:00
Vincent Coubard
76f89f6f89
BLE: Factorize peripheral privacy applied when connected
2020-10-05 11:54:04 +01:00
Vincent Coubard
e4b317c1b1
BLE: Add workaround for cordio use of global random address
...
In Cordio, the global random address is used when the local device is connected instead of the advertising set one.
This can cause pairing to fail if the advertising set address and the global random address are different.
This workaround forces the global random address to be set when advertising is started and extended advertising is present.
2020-10-05 11:54:04 +01:00
Vincent Coubard
8fe2d7ebbe
BLE: Report connection internally when address resolution has completed.
2020-10-05 11:54:03 +01:00
Vincent Coubard
8716298ea2
BLE: Update DB entry if current entry doesn't match requested EDIV and RAND
2020-10-05 11:54:03 +01:00
Vincent Coubard
4c1afe8e83
BLE: Update identity address when retrieved from the DB
2020-10-05 11:54:03 +01:00
Vincent Coubard
7c8a754667
BLE: Remove set advertising timeout from SM pal
2020-10-05 11:54:03 +01:00
Vincent Coubard
02667389db
BLE: Fix insertion to host resolving list.
2020-10-05 11:54:03 +01:00
Vincent Coubard
3a632a3685
BLE: Check if the resolving list item is populated instead of IRK validity
2020-10-05 11:54:03 +01:00
Vincent Coubard
1daee237e9
BLE: Queue address resolution in event queue to avoid synchronous execution
...
Otherwise when no IRK are available, the process will execute synchronously, calling the callback before the return of the function.
2020-10-05 11:54:03 +01:00
Vincent Coubard
dee20fe5a7
BLE: Check if extended advertising is available to clear advertising set upon connection
2020-10-05 11:54:03 +01:00
Paul Szczeanek
f126793f20
Add host reolustion for advertising and connections
2020-10-05 11:53:59 +01:00
Paul Szczeanek
593c1776b4
add EventList class for storing pending events
2020-10-05 11:53:23 +01:00
Paul Szczeanek
df17942c2c
remove unused enhanced conn complete
2020-10-05 11:53:23 +01:00
Paul Szczeanek
0a3cd69fc6
event handler should not affect internal state
2020-10-05 11:53:22 +01:00
Paul Szczeanek
685af00fd5
split resolve addres into cache and not cache
2020-10-05 11:53:22 +01:00
Vincent Coubard
4859dbe426
BLE: Set identity address to random static.
...
This also ensure the random static address used by gap is the correct one.
2020-10-05 11:53:22 +01:00
Vincent Coubard
5cb05958a9
BLE: Add function to get the device random static address.
2020-10-05 11:53:22 +01:00
Vincent Coubard
9eac36879a
BLE: improve scan state bookkeeping
2020-10-05 11:53:22 +01:00
Vincent Coubard
48f4cfbe04
BLE: return stack busy instead of invalid state when applicable
...
enabling/disabling scanning and advertising operations can be prevented if the previous operations hasn't completed.
Return that the stack is busy and cannot fulfill the request at the moment rather than the state is invalid.
2020-10-05 11:53:22 +01:00
Vincent Coubard
3c22f8ae1d
BLE: privacy tracing cleanup
2020-10-05 11:53:22 +01:00
Vincent Coubard
19d89366d7
BLE: Private address when initiating connection
2020-10-05 11:53:22 +01:00
Vincent Coubard
c39d03a531
BLE: Implement private address rotation for initiating.
2020-10-05 11:53:22 +01:00
Vincent Coubard
4685322f4e
BLE: Add routine that computes the random address to use depending on the procedure.
2020-10-05 11:53:21 +01:00
Vincent Coubard
559640cbd5
BLE: check LL resolution availability before enabling it.
2020-10-05 11:53:21 +01:00
Vincent Coubard
e5128689aa
BLE: Fix random static address storage
2020-10-05 11:53:21 +01:00
Vincent Coubard
924f8b1dc9
BLE: Update state when scan started/stopped callback received.
2020-10-05 11:53:21 +01:00
Vincent Coubard
d8c6820cbd
BLE: Add callback for scan started and stoped.
2020-10-05 11:53:21 +01:00
Vincent Coubard
b8549ec91d
BLE: rename address resolution handler.
2020-10-05 11:53:21 +01:00
Vincent Coubard
4b853956d9
BLE: Add resolvable and non resolvable private address rotation with advertising
2020-10-05 11:53:15 +01:00
Vincent Coubard
f810ec4c2a
BLE: Add initiating flag into gap to track if the local device tries to connect to a peer.
2020-10-05 11:50:34 +01:00
Vincent Coubard
7e16ee448e
BLE: Bind address controller with Gap
2020-10-05 11:50:33 +01:00
Vincent Coubard
313676a089
BLE: Add gap handlers to be informed when advertising as started or been stopped
2020-10-05 11:50:33 +01:00
Vincent Coubard
237278be24
BLE: Update security manager to use the PrivateAddressController
...
Resolution list has been removed from the pal as this is handled by the PrivateAddressController.
2020-10-05 11:50:33 +01:00
Vincent Coubard
44681ee982
BLE: Add PrivateAddressController module.
...
It controls private address generation and host or controller address resolution.
2020-10-05 11:50:33 +01:00
phst
c0021e2147
Add missing defines to activate/deactivate BLE features
2020-09-17 11:02:25 +02:00
Paul Szczeanek
77ba844ef9
double negation fixed and ifs normalised
2020-09-09 17:08:32 +01:00
Vincent Coubard
904b7f5163
BLE: reintroduce default implementation GattClient::discoverServices.
2020-09-07 14:32:18 +01:00
Vincent Coubard
f116604024
BLE: correctness improvments
...
Remove unused variable, improve header inclusion, fix initialization list order,
2020-09-04 13:26:29 +01:00
Vincent Coubard
702c1b9756
BLE: Fixed used of parent pointer in implementation classes.
2020-09-04 13:25:32 +01:00
Vincent Coubard
cf91053f93
BLE: Move cordio implementation include into source folder
2020-08-25 11:34:00 +01:00
Vincent Coubard
029ed3a0c5
BLE: Cleanup BLEInstanceBas implementation
2020-08-25 11:33:59 +01:00
Vincent Coubard
d914cb1fb2
BLE: Cleanup PalSigningEventMonitor.
2020-08-25 11:33:59 +01:00
Vincent Coubard
b42abd0e25
BLE: cleanup PalEvent queue and implementation
2020-08-25 11:33:59 +01:00
Vincent Coubard
52b132e042
BLE: Cleanup pal security manager
2020-08-25 11:33:59 +01:00
Vincent Coubard
3f3c11b113
BLE: Move GattServer implementation from generic to cordio
2020-08-25 11:32:38 +01:00
Vincent Coubard
e59e1b5ef6
BLE: Cleanup of pal AttClient and GattClient
...
Fix interface namespace being not used.
Move generic AttClient to GattClient adapter back into the pal
2020-08-25 11:32:38 +01:00
Vincent Coubard
bc259c561d
BLE: cleanup generic sources
2020-08-25 11:32:37 +01:00
Vincent Coubard
241c69f50d
BLE: Cleanup public headers
2020-08-25 11:26:28 +01:00
Vincent Coubard
cc78150afd
BLE: Move generic lib file into source/generic .
2020-08-25 11:26:27 +01:00
Vincent Coubard
13c358717f
BLE: Move GATT public header into ble/gatt
...
Move private headers GattServerEvents.h, GapEvents,h and GapType.h in relevant part of the source tree.
2020-08-25 11:26:26 +01:00
Vincent Coubard
27cb03824e
BLE: Move common publi headers into ble/common
2020-08-25 11:26:26 +01:00
Vincent Coubard
d3427ca495
BLE: Move gap public header at the root.
2020-08-25 11:26:26 +01:00
Vincent Coubard
e11bfb6514
BLE: move PAL headers into source/pal
2020-08-25 11:26:26 +01:00
Vincent Coubard
a45325995b
BLE: Move BleInstanceBase.h into source.
2020-08-25 11:26:26 +01:00
Vincent Coubard
c2a09abee8
BLE: Move SecurityDB related files into generic sources
2020-08-25 11:26:26 +01:00
Vincent Coubard
381700a250
BLE: Move generic implementation and headers into source/generic
2020-08-25 11:26:26 +01:00