Direct-BT
2.3.1
Direct-BT - Direct Bluetooth Programming.
|
Go to the documentation of this file.
26 #ifndef DBT_SEC_SETTINGS_HPP_
27 #define DBT_SEC_SETTINGS_HPP_
40 namespace BTSecurityRegistry {
56 Entry(
const std::string& nameSub_)
76 return "BTSecurityDetail["+
id+
", lvl "+
154 return get(addr, name, [](
const EUI48& a,
const std::string& n,
const Entry& e)->
bool {
167 return get(addrSub, name, [](
const EUI48Sub& as,
const std::string& n,
const Entry& e)->
bool {
179 return get(name, [](
const std::string& n,
const Entry& e)->
bool {
192 return get(addrSub, name, [](
const EUI48Sub& as,
const std::string& n,
const Entry& e)->
bool {
204 return get(name, [](
const std::string& n,
const Entry& e)->
bool {
223 Entry*
getOrCreate(const std::
string& addrOrNameSub) noexcept;
228 void clear() noexcept;
@ UNSET
Denoting unset value, i.e.
Entry * getOrCreate(const std::string &addrOrNameSub) noexcept
Determines whether the given.
jau::snsize_t indexOf(const EUI48Sub &needle) const noexcept
constexpr bool isSecLevelOrIOCapSet() const noexcept
std::string allToString() noexcept
bool(* NameEntryMatchFunc)(const std::string &name, const Entry &e)
Function for user defined std::string name BTSecurityRegistry::Entry matching criteria and algorithm.
Entry * getStartOf(const EUI48 &addr, const std::string &name) noexcept
Returns a matching Entry,.
SMPIOCapability io_cap_auto
std::string toString() const noexcept
Returns the EUI48 sub-string representation, less or equal 17 characters representing less or equal 6...
constexpr int getPairingPasskey() const noexcept
std::string toString() const noexcept
PRAGMA_DISABLE_WARNING_POP constexpr_cxx20 std::string to_string(const endian &v) noexcept
Return std::string representation of the given jau::endian.
A 48 bit EUI-48 sub-identifier, see EUI48.
BTSecurityLevel
Bluetooth Security Level.
constexpr const SMPIOCapability & getIOCap() const noexcept
static jau::snsize_t indexOf(const uint8_t haystack_b[], const jau::nsize_t haystack_length, const uint8_t needle_b[], const jau::nsize_t needle_length) noexcept
Find index of needle within haystack.
bool(* AddressNameEntryMatchFunc)(const EUI48 &address, const std::string &name, const Entry &e)
Function for user defined EUI48 address and name BTSecurityRegistry::Entry matching criteria and algo...
static const EUI48Sub ALL_DEVICE
EUI48 MAC address matching all device, i.e.
Implementation of a dynamic linear array storage, aka vector.
constexpr bool getPairingNumericComparison() const noexcept
Entry(const std::string &nameSub_)
jau::nsize_t length
The actual length in bytes of the EUI48 sub-address, less or equal 6 bytes.
jau::darray< Entry > & getEntries() noexcept
Returns the reference of the current list of Entry, not a copy.
Entry * getEqual(const EUI48Sub &addrSub, const std::string &name) noexcept
Returns a matching Entry,.
Entry * get(const EUI48 &addr, const std::string &name, AddressNameEntryMatchFunc m) noexcept
Returns a matching BTSecurityRegistry::Entry with the given.
@ UNSET
Security Level not set, value 0.
bool(* AddressSubNameEntryMatchFunc)(const EUI48Sub &addressSub, const std::string &name, const Entry &e)
Function for user defined EUI48Sub addressSub and name BTSecurityRegistry::Entry matching criteria an...
std::string to_string(const BDAddressType type) noexcept
constexpr const SMPIOCapability & getSecurityAutoIOCap() const noexcept
A packed 48 bit EUI-48 identifier, formerly known as MAC-48 or simply network device MAC address (Med...
SMPIOCapability
Vol 3, Part H, 2.3.2 IO capabilities.
BTSecurityLevel sec_level
static constexpr int NO_PASSKEY
Entry(const EUI48Sub &addrSub_)
constexpr const BTSecurityLevel & getSecLevel() const noexcept
void clear() noexcept
Clears internal list.
constexpr bool isSecurityAutoEnabled() const noexcept