TI BLE Stack API Documentation  2.03.08
Modules | Classes | Macros | Typedefs | Functions | Variables
SM Message opcocdes

Modules

 Security Manager API Functions
 

Classes

struct  smNewRandKeyEvent_t
 
struct  smEventHdr_t
 
struct  smEccKeysEvt_t
 
struct  smDhKeyEvt_t
 
struct  keyDist_t
 
struct  smEccKeys_t
 
struct  smLinkSecurityReq_t
 
struct  smSecurityInfo_t
 
struct  smIdentityInfo_t
 
struct  smSigningInfo_t
 
struct  authReq_t
 

Macros

#define SM_ECC_KEYS_EVENT   0x00
 
#define SM_DH_KEY_EVENT   0x01
 

Typedefs

typedef void(* smCB_t) (uint8 *secretKey, uint8 *publicKeyX, uint8 *publicKeyY)
 

Functions

void SM_Init (uint8 task_id)
 
uint16 SM_ProcessEvent (uint8 task_id, uint16 events)
 
void SM_p256KeyCB (hciEvt_BLEReadP256PublicKeyComplete_t *pK, uint8 *privateKey)
 
void SM_dhKeyCB (hciEvt_BLEGenDHKeyComplete_t *pDhKey)
 

Variables

osal_event_hdr_t smNewRandKeyEvent_t::hdr
 SM_NEW_RAND_KEY_EVENT and status.
 
uint8 smNewRandKeyEvent_t::newKey [16]
 New key value - if status is SUCCESS.
 
osal_event_hdr_t smEventHdr_t::hdr
 
uint8 smEventHdr_t::opcode
 
osal_event_hdr_t smEccKeysEvt_t::hdr
 SM_MSG_EVENT and status.
 
uint8 smEccKeysEvt_t::opcode
 SM_ECC_KEYS_EVENT.
 
uint8 smEccKeysEvt_t::privateKey [32]
 ECC private key.
 
uint8 smEccKeysEvt_t::publicKeyX [32]
 ECC public key X-coordinate.
 
uint8 smEccKeysEvt_t::publicKeyY [32]
 ECC public key Y-coordinate.
 
osal_event_hdr_t smDhKeyEvt_t::hdr
 SM_MSG_EVENT and status.
 
uint8 smDhKeyEvt_t::opcode
 SM_DH_KEY_EVENT.
 
uint8 smDhKeyEvt_t::dhKey [32]
 ECC Diffie-Hellman key.
 
unsigned int keyDist_t::sEncKey:1
 Set to distribute slave encryption key.
 
unsigned int keyDist_t::sIdKey:1
 Set to distribute slave identity key.
 
unsigned int keyDist_t::sSign:1
 Set to distribute slave signing key.
 
unsigned int keyDist_t::sLinkKey:1
 Set to derive slave link key from slave LTK.
 
unsigned int keyDist_t::sReserved:4
 Reserved for slave - don't use.
 
unsigned int keyDist_t::mEncKey:1
 Set to distribute master encryption key.
 
unsigned int keyDist_t::mIdKey:1
 Set to distribute master identity key.
 
unsigned int keyDist_t::mSign:1
 Set to distribute master signing key.
 
unsigned int keyDist_t::mLinkKey:1
 Set to derive master link key from master LTK.
 
unsigned int keyDist_t::mReserved:4
 Reserved for master - don't use.
 
uint8 smEccKeys_t::isUsed
 FALSE if not used. USE_PKEYS if public keys only. USE_ALL_KEYS if public and private keys.
 
uint8 smEccKeys_t::sK [32]
 private key (only used if supplied by Bond Manager)
 
uint8 smEccKeys_t::pK_x [32]
 public key X-coordinate
 
uint8 smEccKeys_t::pK_y [32]
 public key Y-coordinate
 
uint8 smLinkSecurityReq_t::ioCaps
 I/O Capabilities (ie.
 
uint8 smLinkSecurityReq_t::oobAvailable
 True if remote Out-of-band key available.
 
uint8 smLinkSecurityReq_t::oob [16]
 Out-Of-Bounds key from remote device.
 
uint8 smLinkSecurityReq_t::oobConfirm [16]
 Out-Of-Bounds confirm from remote device. Secure Connections only.
 
uint8 smLinkSecurityReq_t::localOobAvailable
 True if local Out-of-band key available. Secure Connections only.
 
uint8 smLinkSecurityReq_t::localOob [16]
 Out-Of-Bounds local data. Secure Connections only.
 
uint8 smLinkSecurityReq_t::isSCOnlyMode
 TRUE if Secure Connections Only Mode. Secure Connections only.
 
smEccKeys_t smLinkSecurityReq_t::eccKeys
 Optionally specified ECC keys for pairing. Secure Connections only.
 
uint8 smLinkSecurityReq_t::authReq
 Authentication Requirements.
 
keyDist_t smLinkSecurityReq_t::keyDist
 Key Distribution mask.
 
uint8 smLinkSecurityReq_t::maxEncKeySize
 Maximum Encryption Key size (7-16 bytes)
 
uint8 smSecurityInfo_t::ltk [16]
 Long Term Key (LTK)
 
uint16 smSecurityInfo_t::div
 LTK Diversifier.
 
uint8 smSecurityInfo_t::rand [8]
 LTK random number.
 
uint8 smSecurityInfo_t::keySize
 LTK Key Size (7-16 bytes)
 
uint8 smIdentityInfo_t::irk [16]
 Identity Resolving Key (IRK)
 
uint8 smIdentityInfo_t::addrType
 Address type for BD_ADDR.
 
uint8 smIdentityInfo_t::bd_addr [6]
 The advertiser may set this to zeroes to not disclose its BD_ADDR (public address).
 
uint8 smSigningInfo_t::srk [16]
 Signature Resolving Key (CSRK)
 
uint32 smSigningInfo_t::signCounter
 Sign Counter.
 
unsigned int authReq_t::bonding:2
 Bonding flags.
 
unsigned int authReq_t::mitm:1
 Man-In-The-Middle (MITM)
 
unsigned int authReq_t::sc:1
 LE Secure Connections (SC)
 
unsigned int authReq_t::kp:1
 LE SC Keypress Notifications.
 
unsigned int authReq_t::reserved:3
 Reserved - don't use.
 

Detailed Description

Typedef Documentation

§ smCB_t

typedef void(* smCB_t) (uint8 *secretKey, uint8 *publicKeyX, uint8 *publicKeyY)

Application callback to the SM for ECC keys and Diffie-Hellman Shared Secret (ECDH).

Function Documentation

§ SM_Init()

void SM_Init ( uint8  task_id)

End SM_API