summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2020-11-24 09:48:35 +0100
committerSven Gothel <[email protected]>2020-11-24 09:48:35 +0100
commitbe883d240f0035fe453f06d273a86516a938cf61 (patch)
tree11d424b001c1b9494f6916386345559015de92b3
parent9fda281e586f07e36c0779b2d5d89b05c13d8aaa (diff)
Documentation: Add notes re 'LE Secure Connections and LE legacy pairing'
-rw-r--r--README.md16
-rw-r--r--api/direct_bt/ATTPDUTypes.hpp4
2 files changed, 17 insertions, 3 deletions
diff --git a/README.md b/README.md
index f0b45e8d..a9cf0f24 100644
--- a/README.md
+++ b/README.md
@@ -25,7 +25,7 @@ Direct-BT
offering robust high-performance support for embedded & desktop with zero overhead via C++ and Java.
*Direct-BT* supports a fully event driven workflow from device discovery to GATT programming,
-using its platform agnostic HCI, GATT, SMP and L2CAP client-side protocol implementation.
+using its platform agnostic HCI, L2CAP, SMP and GATT client-side protocol implementation.
[AdapterStatusListener](https://jausoft.com/projects/direct_bt/build/documentation/cpp/html/classdirect__bt_1_1AdapterStatusListener.html)
allows listening to adapter changes and device discovery and
@@ -48,12 +48,15 @@ Some more elaboration on the implementation and its status
> The host-side of HCI, L2CAP etc is usually implemented within the OS, e.g. *Linux/BlueZ* Kernel.
> These layers communicate with the actual BT controller and the user application, acting as the middleman.
>
-> *Direct-BT* offers packet types and handler facilities for HCI, L2CAP, ATT-PDU and GATT (as well to *Linux/BlueZ-Mngr*)
+> *Direct-BT* offers packet types and handler facilities for HCI, L2CAP, SMP, ATT-PDU and GATT (as well to *Linux/BlueZ-Mngr*)
> to communicate with these universal host-side Bluetooth layers and hence to reach-out to devices.
>
> Currently only the master/client mode is supported to work with LE BT devices.
>
-> Work on *LE Secure Connections* and *LE legacy pairing* is in progress, while BREDR support is planned and prepared for.
+> *LE Secure Connections* and *LE legacy pairing* is supported on *Linux/BlueZ*,
+> exposing BTSecurityLevel and SMPIOCapability setup per connection.
+>
+> BREDR support is planned and prepared for.
>
To support other platforms than Linux/BlueZ, we will have to
@@ -321,6 +324,13 @@ Changes
* TODO
+**2.1.33**
+
+* Added AdapterStatusListener callback methods devicePairingState(..) and deviceReady(..), supporting security/pairing.
+* Added support for *LE Secure Connections* and *LE legacy pairing* utilizing SMP and BlueZ/Kernel features.
+* Exposing BTSecurityLevel and SMPIOCapability for connection oriented security setup on BlueZ/Kernel, see DBTDevice and BluetoothDevice.
+* Covering SMP over L2CAP messaging via SMPPDUMsg types and retrieval via HCI/ACL/L2CAP on BlueZ/Kernel
+
**2.1.30**
* Use read lock-free jau::cow_vector for all callback-lists, avoiding locks in callback iteration
diff --git a/api/direct_bt/ATTPDUTypes.hpp b/api/direct_bt/ATTPDUTypes.hpp
index 75efa8f8..3770a699 100644
--- a/api/direct_bt/ATTPDUTypes.hpp
+++ b/api/direct_bt/ATTPDUTypes.hpp
@@ -62,6 +62,10 @@
* - *SMP Support* via SMPHandler using SMPPDUMsg over L2CAPComm, providing (Not yet supported by Linux/BlueZ)
* - LE Secure Connections
* - LE legacy pairing
+ * - On Linux/BlueZ, LE Secure Connections and LE legacy pairing is supported using
+ * - BTSecurityLevel setting via DBTDevice/L2CAPComm per connection and
+ * - SMPIOCapability via DBTManager (per adapter) and DBTDevice (per connection)
+ * - SMPPDUMsg SMP event tracking over HCI/ACL/L2CAP, observing operations
*
* DBTManager utilizes the *BlueZ Kernel Manager Control Channel*
* for adapter configuration and adapter add/removal notifications (ChangedAdapterSetFunc()).