Direct-BT v3.3.0-1-gc2d430c
Direct-BT - Direct Bluetooth Programming.
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
direct_bt::MgmtLongTermKey Struct Reference

Used for MgmtLoadLongTermKeyCmd and MgmtEvtNewLongTermKey. More...

#include <MgmtTypes.hpp>

Collaboration diagram for direct_bt::MgmtLongTermKey:

Public Member Functions

SMPLongTermKey toSMPLongTermKey (const BTRole adapterRole) const noexcept
 
std::string toString () const noexcept
 

Static Public Member Functions

static constexpr uint8_t to_role (const BTRole adapterRole, const bool is_responder)
 

Public Attributes

EUI48 address
 
BDAddressType address_type
 0 reserved, 1 le public, 2 le static random address. More...
 
uint16_t ediv
 Encryption Diversifier. More...
 
uint8_t enc_size
 Encryption Size. More...
 
MgmtLTKType key_type
 Describing type of key, i.e. More...
 
jau::uint128dp_t ltk
 Long Term Key (LTK) More...
 
uint64_t rand
 Random Number. More...
 
uint8_t role
 

Detailed Description

Used for MgmtLoadLongTermKeyCmd and MgmtEvtNewLongTermKey.

Notable: No endian wise conversion shall occur on this data, since the encryption values are interpreted as a byte stream.

Definition at line 264 of file MgmtTypes.hpp.

Member Function Documentation

◆ toString()

std::string direct_bt::MgmtLongTermKey::toString ( ) const
inlinenoexcept

Definition at line 264 of file MgmtTypes.hpp.

◆ to_role()

static constexpr uint8_t direct_bt::MgmtLongTermKey::to_role ( const BTRole  adapterRole,
const bool  is_responder 
)
inlinestaticconstexpr

Definition at line 264 of file MgmtTypes.hpp.

Here is the caller graph for this function:

◆ toSMPLongTermKey()

SMPLongTermKey direct_bt::MgmtLongTermKey::toSMPLongTermKey ( const BTRole  adapterRole) const
inlinenoexcept
  • Convert this instance into its platform agnostic SMPLongTermKey type.

Definition at line 264 of file MgmtTypes.hpp.

Member Data Documentation

◆ address

EUI48 direct_bt::MgmtLongTermKey::address

Definition at line 264 of file MgmtTypes.hpp.

◆ address_type

BDAddressType direct_bt::MgmtLongTermKey::address_type

0 reserved, 1 le public, 2 le static random address.

Compatible with BDAddressType.

Definition at line 264 of file MgmtTypes.hpp.

◆ key_type

MgmtLTKType direct_bt::MgmtLongTermKey::key_type

Describing type of key, i.e.

used BTSecurityLevel and whether using Secure Connections (SC) for P256.

Definition at line 264 of file MgmtTypes.hpp.

◆ role

uint8_t direct_bt::MgmtLongTermKey::role
  • BlueZ interprets role as follows: * - Adapter role slave/responder (GATT server) * - 1 = master/initiator (GATT client); 0 = slave/responder (GATT server) * - Adapter role master/initiator (GATT client) * - 0 = master/initiator (GATT client); 1 = slave/responder (GATT server)

Definition at line 264 of file MgmtTypes.hpp.

◆ enc_size

uint8_t direct_bt::MgmtLongTermKey::enc_size

Encryption Size.

Definition at line 264 of file MgmtTypes.hpp.

◆ ediv

uint16_t direct_bt::MgmtLongTermKey::ediv

Encryption Diversifier.

Definition at line 264 of file MgmtTypes.hpp.

◆ rand

uint64_t direct_bt::MgmtLongTermKey::rand

Random Number.

Definition at line 264 of file MgmtTypes.hpp.

◆ ltk

jau::uint128dp_t direct_bt::MgmtLongTermKey::ltk

Long Term Key (LTK)

Definition at line 264 of file MgmtTypes.hpp.


The documentation for this struct was generated from the following file: