TI BLE5-Stack API Documentation  1.01.12.00
Data Structures | Macros | Typedefs | Functions
gapbondmgr.h File Reference

Detailed Description

GAPBondMgr layer interface

Go to the source code of this file.

Data Structures

struct  gapBondCBs_t
 
struct  gapBondEccKeys_t
 Public and Private ECC Keys. More...
 

Macros

#define ECC_KEYLEN   32
 ECC Key Length: 256 bit keys.
 
#define GAP_BONDINGS_MAX   6
 Maximum number of bonds that can be saved in NV.
 
#define GAP_CHAR_CFG_MAX   4
 Maximum number of characteristic configuration that can be saved in NV.
 
#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_FAIL_INITIATE_PAIRING   0x01
 Initiate pairing upon unsuccessful bonding.
 
#define GAPBOND_FAIL_NO_ACTION   0x00
 Take no action upon unsuccessful bonding.
 
#define GAPBOND_FAIL_TERMINATE_ERASE_BONDS   0x03
 
#define GAPBOND_FAIL_TERMINATE_LINK   0x02
 Terminate link upon unsuccessful bonding.
 
#define GAPBOND_IO_CAP_DISPLAY_ONLY   0x00
 Display Only Device.
 
#define GAPBOND_IO_CAP_DISPLAY_YES_NO   0x01
 Display and Yes and No Capable.
 
#define GAPBOND_IO_CAP_KEYBOARD_DISPLAY   0x04
 Both Keyboard and Display Capable.
 
#define GAPBOND_IO_CAP_KEYBOARD_ONLY   0x02
 Keyboard Only.
 
#define GAPBOND_IO_CAP_NO_INPUT_NO_OUTPUT   0x03
 No Display or Input Device.
 
#define GAPBOND_IO_CAPABILITIES   0x403
 
#define GAPBOND_KEY_DIST_LIST   0x407
 
#define GAPBOND_KEYDIST_MENCKEY   0x10
 Master Encryption Key.
 
#define GAPBOND_KEYDIST_MIDKEY   0x20
 Master IRK and ID information.
 
#define GAPBOND_KEYDIST_MLINK   0x80
 Master Link Key.
 
#define GAPBOND_KEYDIST_MSIGN   0x40
 Master CSRK.
 
#define GAPBOND_KEYDIST_SENCKEY   0x01
 Slave Encryption Key.
 
#define GAPBOND_KEYDIST_SIDKEY   0x02
 Slave IRK and ID information.
 
#define GAPBOND_KEYDIST_SLINK   0x08
 Slave Link Key.
 
#define GAPBOND_KEYDIST_SSIGN   0x04
 Slave CSRK.
 
#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_PAIRING_MODE_INITIATE   0x02
 Don't wait, initiate a pairing request or slave security request.
 
#define GAPBOND_PAIRING_MODE_NO_PAIRING   0x00
 Pairing is not allowed.
 
#define GAPBOND_PAIRING_MODE_WAIT_FOR_REQ   0x01
 Wait for a pairing request or slave security request.
 
#define GAPBOND_PAIRING_STATE_BOND_SAVED   0x03
 Bonding record saved in NV.
 
#define GAPBOND_PAIRING_STATE_CAR_READ   0x04
 Central Address Resolution Characteristic Read.
 
#define GAPBOND_PAIRING_STATE_COMPLETE   0x01
 
#define GAPBOND_PAIRING_STATE_ENCRYPTED   0x02
 
#define GAPBOND_PAIRING_STATE_RPAO_READ   0x05
 Resolvable Private Address Only Characteristic Read.
 
#define GAPBOND_PAIRING_STATE_STARTED   0x00
 
#define GAPBOND_REGENERATE_ALWAYS   0x00
 Regenerate after each usage.
 
#define GAPBOND_REGENERATE_NEVER   0xFF
 Never regenerate, always use the same pair.
 
#define GAPBOND_SECURE_CONNECTION   0x411
 
#define GAPBOND_SECURE_CONNECTION_ALLOW   0x01
 Secure Connections are supported.
 
#define GAPBOND_SECURE_CONNECTION_NONE   0x00
 Secure Connections not supported.
 
#define GAPBOND_SECURE_CONNECTION_ONLY   0x02
 Secure Connections Only Mode.
 
#define SMP_PAIRING_FAILED_AUTH_REQ   0x03
 
#define SMP_PAIRING_FAILED_CMD_NOT_SUPPORTED   0x07
 The SMP command received is not supported on this device.
 
#define SMP_PAIRING_FAILED_CONFIRM_VALUE   0x04
 The confirm value doesn't match the calculated compare value.
 
#define SMP_PAIRING_FAILED_DHKEY_CHECK_FAILED   0x0B
 
#define SMP_PAIRING_FAILED_ENC_KEY_SIZE   0x06
 
#define SMP_PAIRING_FAILED_INVALID_PARAMETERS   0x0A
 
#define SMP_PAIRING_FAILED_NOT_SUPPORTED   0x05
 Pairing isn't supported by the device.
 
#define SMP_PAIRING_FAILED_NUM_COMPARISON_FAILED   0x0C
 
#define SMP_PAIRING_FAILED_OOB_NOT_AVAIL   0x02
 The OOB data is not available.
 
#define SMP_PAIRING_FAILED_PASSKEY_ENTRY_FAILED   0x01
 
#define SMP_PAIRING_FAILED_REPEATED_ATTEMPTS   0x09
 
#define SMP_PAIRING_FAILED_UNSPECIFIED   0x08
 Pairing failed due to an unspecified reason.
 

Typedefs

typedef void(* pfnPairStateCB_t) (uint16_t connectionHandle, uint8_t state, uint8_t status)
 
typedef void(* pfnPasscodeCB_t) (uint8_t *deviceAddr, uint16_t connectionHandle, uint8_t uiInputs, uint8_t uiOutputs, uint32_t numComparison)
 

Functions

bStatus_t GAPBondMgr_FindAddr (uint8_t *pDevAddr, GAP_Peer_Addr_Types_t addrType, uint8_t *pIdx, GAP_Peer_Addr_Types_t *pIdentityAddrType, uint8_t *pIdentityAddr)
 Search for an address in the bonding table. If the address is a random private resolvable address, attempt to resolve the random address against all IRK's in bonding table. As output parameters, return the following: More...
 
bStatus_t GAPBondMgr_GetParameter (uint16_t param, void *pValue)
 
bStatus_t GAPBondMgr_Pair (uint16_t connHandle)
 
bStatus_t GAPBondMgr_PasscodeRsp (uint16_t connectionHandle, uint8_t status, uint32_t passcode)
 
void GAPBondMgr_Register (gapBondCBs_t *pCB)
 
bStatus_t GAPBondMgr_ServiceChangeInd (uint16_t connectionHandle, uint8_t setParam)
 
bStatus_t GAPBondMgr_SetParameter (uint16_t param, uint8_t len, void *pValue)
 
© Copyright 1995-2021, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale