TI BLE5-Stack API Documentation  1.01.12.00
Macros
GAP Bond Manager Parameters

Macros

#define GAPBOND_AUTO_SYNC_WL   0x40D
 
#define GAPBOND_BOND_COUNT   0x40E
 
#define GAPBOND_BOND_FAIL_ACTION   0x40F
 
#define GAPBOND_BONDING_ENABLED   0x406
 
#define GAPBOND_ECC_KEYS   0x413
 
#define GAPBOND_ECCKEY_REGEN_POLICY   0x412
 
#define GAPBOND_ERASE_ALLBONDS   0x409
 
#define GAPBOND_ERASE_LOCAL_INFO   0x41A
 
#define GAPBOND_ERASE_SINGLEBOND   0x410
 
#define GAPBOND_IO_CAPABILITIES   0x403
 
#define GAPBOND_KEY_DIST_LIST   0x407
 
#define GAPBOND_KEYSIZE   0x40C
 
#define GAPBOND_LRU_BOND_REPLACEMENT   0x418
 
#define GAPBOND_MITM_PROTECTION   0x402
 
#define GAPBOND_OOB_DATA   0x405
 
#define GAPBOND_OOB_ENABLED   0x404
 
#define GAPBOND_PAIRING_MODE   0x400
 
#define GAPBOND_SECURE_CONNECTION   0x411
 

Detailed Description

Parameters set via GAPBondMgr_SetParameter

Macro Definition Documentation

§ GAPBOND_AUTO_SYNC_WL

#define GAPBOND_AUTO_SYNC_WL   0x40D

Synchronize the whitelist with bonded devices (Read/Write)

If TRUE, the whitelist will first be cleared. Then, each unique address stored by bonds in SNV will be synched with the whitelist indefinitely or until this is set to FALSE

size: uint8_t

default: FALSE

range: TRUE (sync) or FALSE (don't sync)

§ GAPBOND_BOND_COUNT

#define GAPBOND_BOND_COUNT   0x40E

Gets the total number of bonds stored in NV (Read-only)

size: uint8_t

range: 0 255

§ GAPBOND_BOND_FAIL_ACTION

#define GAPBOND_BOND_FAIL_ACTION   0x40F

The action that the device takes after an unsuccessful bonding attempt (Read / Write)

size: uint8_t

default: GAPBOND_FAIL_TERMINATE_LINK

range: Bonding Failure Actions

§ GAPBOND_BONDING_ENABLED

#define GAPBOND_BONDING_ENABLED   0x406

Whether to bond after pairing (Read/Write)

size: uint8_t

default: FALSE

range: TRUE (request) or FALSE (do not request)

§ GAPBOND_ECC_KEYS

#define GAPBOND_ECC_KEYS   0x413

The private and public keys to use for Secure Connections pairing (Read/Write)

Only applicable for Secure Connections. Allows the application to specify the private and public keys to use pairing. When this is set, the keys are used indefinitely even if a regeneration policy was set with GAPBOND_ECCKEY_REGEN_POLICY. To make the Bond Manager stop using these keys, pass a 1 byte value of 0x00. These keys are stored in RAM and are not retained in non-volatile memory. These keys can be defined by the application, or the application can request them using the SM_GetEccKeys command.

size: gapBondEccKeys_t

default: by default, the keys are generated using GAPBOND_ECCKEY_REGEN_POLICY

range: A valid gapBondEccKeys_t structure
0x00: previously passed keys will no longer be used

§ GAPBOND_ECCKEY_REGEN_POLICY

#define GAPBOND_ECCKEY_REGEN_POLICY   0x412

ECC Key Regeneration Policy (Write Only)

Only applicable for Secure Connections. Define reuse of the private and public ECC keys for multiple pairings.The default is to always regenerate the keys upon each new pairing. This parameter has no effect when the application specifies the keys using the GAPBOND_ECC_KEYS parameter. The behavior is that upon each pairing the number of recycles remaining is decremented by 1, but if the pairing fails the count is decremented by 3. The specification recommends that this value be set to no higher than 10 to avoid an attacker from learning too much about a private key before it is regenerated.

size: uint8_t

default: 2

range: 0 256

§ GAPBOND_ERASE_ALLBONDS

#define GAPBOND_ERASE_ALLBONDS   0x409

Erase all bonds from SNV and remove all bonded devices (Write)

Note
The erase won't happen until there are no active connections.

§ GAPBOND_ERASE_LOCAL_INFO

#define GAPBOND_ERASE_LOCAL_INFO   0x41A

Erase Local NV Info (Write-only)

Erase local IRK, CSRK, address mode, LRU list, random address.

Note
The erase won't happen until there are no active connections.

§ GAPBOND_ERASE_SINGLEBOND

#define GAPBOND_ERASE_SINGLEBOND   0x410

Erase a single bonded device (Write-only)

Note
The erase won't happen until there are no active connections.

size: uint8_t[B_ADDR_LEN]

range: A one-byte address type followed by a 6 byte address

§ GAPBOND_IO_CAPABILITIES

#define GAPBOND_IO_CAPABILITIES   0x403

The I/O capabilities of the local device (Read/Write)

size: uint8_t

default: GAPBOND_IO_CAP_DISPLAY_ONLY

range: GAP Bond Manager I/O Capabilities

§ GAPBOND_KEY_DIST_LIST

#define GAPBOND_KEY_DIST_LIST   0x407

Key distribution list for pairing (Read/Write)

Multiple values can be used via bitwise ORing

size: uint8_t

default: GAPBOND_KEYDIST_SENCKEY | GAPBOND_KEYDIST_SIDKEY | GAPBOND_KEYDIST_MIDKEY | GAPBOND_KEYDIST_MSIGN

range: GAP Bond Manager Key Distribution

§ GAPBOND_KEYSIZE

#define GAPBOND_KEYSIZE   0x40C

Key Size used in pairing. (Read/Write)

size: uint8_t

default: 16

range: GAP_PARAM_SM_MIN_KEY_LEN GAP_PARAM_SM_MAX_KEY_LEN

§ GAPBOND_LRU_BOND_REPLACEMENT

#define GAPBOND_LRU_BOND_REPLACEMENT   0x418

Enable / Disable LRU Bond Replacement Scheme (Read/Write)

Whether to enable the least recently used bond scheme so that, when a newly bonded device is added and all the entries are full, the least recently used device’s bond is deleted to make room.

size: uint8_t

default: FALSE

range: TRUE (enable) or FALSE (disable)

§ GAPBOND_MITM_PROTECTION

#define GAPBOND_MITM_PROTECTION   0x402

Whether to use authenticated pairing (Read/Write)

size: uint8_t

default: TRUE

range: TRUE (use) or FALSE (do not use)

§ GAPBOND_OOB_DATA

#define GAPBOND_OOB_DATA   0x405

OOB data to use for pairing (Read/Write)

size: uint8_t[16]

default: 0x00000000000000000000000000000000 -

range: 0x00000000000000000000000000000000 - 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

§ GAPBOND_OOB_ENABLED

#define GAPBOND_OOB_ENABLED   0x404

Whether to use OOB for pairing (Read/Write)

size: uint8_t

default: FALSE

range: TRUE (use) or FALSE (do not use)

§ GAPBOND_PAIRING_MODE

#define GAPBOND_PAIRING_MODE   0x400

Whether to allow pairing, and if so, whether to initiate pairing. (Read/Write)

size: uint8_t

default: GAPBOND_PAIRING_MODE_WAIT_FOR_REQ

range: GAP Bond Manager Pairing Modes

§ GAPBOND_SECURE_CONNECTION

#define GAPBOND_SECURE_CONNECTION   0x411

Define Secure Connections Usage during Pairing (Read/Write)

Note
Per ESR 11 E7226, "If LE Secure Connections pairing is supported by the device, then the SC field shall be set to 1, otherwise it shall be set to 0." Therefore, only testmode can choose GAPBOND_SECURE_CONNECTION_NONE.

size: uint8_t

default: GAPBOND_SECURE_CONNECTION_ALLOW

range: GAP Bond Manager Secure Connections options

© Copyright 1995-2021, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale