Mistake on this page?
Report an issue in GitHub or email us
Typedefs | Enumerations | Functions
BB_API_BLE_RL

Typedefs

typedef void(* bbBleResListAddrResNeeded_t) (uint64_t rpa, bool_t peer, uint8_t peerAddrType, uint64_t peerIdentityAddr)
 Address resolution needed callback signature. More...
 

Enumerations

Functions

void BbBleResListSetAddrResNeededCback (bbBleResListAddrResNeeded_t cback)
 Set address resolution needed callback. More...
 
uint8_t BbBleResListGetSize (void)
 Get resolving list size. More...
 
void BbBleResListClear (void)
 Clear resolving list. More...
 
bool_t BbBleResListAdd (uint8_t peerAddrType, uint64_t peerIdentityAddr, const uint8_t *pPeerIrk, const uint8_t *pLocalIrk)
 Add device to resolving list. More...
 
bool_t BbBleResListRemove (uint8_t peerAddrType, uint64_t peerIdentityAddr)
 Remove device from resolving list. More...
 
bool_t BbBleResListSetPrivacyMode (uint8_t peerAddrType, uint64_t peerIdentityAddr, uint8_t privMode)
 Set privacy mode of a device. More...
 
bool_t BbBleResListGetPrivacyMode (uint8_t peerAddrType, uint64_t peerIdentityAddr, uint8_t *pPrivMode)
 Get privacy mode of a device. More...
 
bool_t BbBleResListReadPeer (uint8_t peerAddrType, uint64_t peerIdentityAddr, uint64_t *pRpa)
 Read peer resolvable address. More...
 
bool_t BbBleResListReadLocal (uint8_t peerAddrType, uint64_t peerIdentityAddr, uint64_t *pRpa)
 Read local resolvable address. More...
 
bool_t BbBleResListUpdateLocal (uint8_t peerAddrType, uint64_t peerIdentityAddr, uint64_t *pRpa)
 Update local resolvable address. More...
 
bool_t BbBleResListGeneratePeer (uint8_t peerAddrType, uint64_t peerIdentityAddr, uint64_t *pRpa)
 Generate peer resolvable address. More...
 
bool_t BbBleResListCheckResolvePeer (uint64_t rpa, uint8_t *pPeerAddrType, uint64_t *pPeerIdentityAddr)
 Check whether a peer address has been resolved. More...
 
bool_t BbBleResListCheckResolveLocal (uint64_t rpa, uint8_t peerAddrType, uint64_t peerIdentityAddr)
 Check whether a local address has been resolved. More...
 
bool_t BbBleResListIsLocalResolved (uint64_t rpa, uint8_t peerAddrType, uint64_t peerIdentityAddr)
 Check whether a local address has been resolved. More...
 
bool_t BbBleResListResolvePeer (uint64_t rpa, uint8_t *pPeerAddrType, uint64_t *pPeerIdentityAddr)
 Resolve peer resolvable address. More...
 
bool_t BbBleResListResolveLocal (uint64_t rpa, uint8_t *pPeerAddrType, uint64_t *pPeerIdentityAddr)
 Resolve local resolvable address. More...
 
uint8_t BbBleResListPeerStatus (bool_t peerAddrRand, uint64_t peerIdentityAddr)
 Get status of peer address in resolving list. More...
 
uint8_t BbBleResListLocalStatus (bool_t peerAddrRand, uint64_t peerIdentityAddr)
 Get status of local address in resolving list. More...
 
void BbBleResListHandleTimeout (void)
 Handle timeout of local resolvable addresses. More...
 
bool_t BbBleResListIsRpaUpd (uint8_t peerAddrType, uint64_t peerIdentityAddr)
 Check if either local RPA or peer RPA is updated. More...
 
bool_t bbBleIsPeerInResList (uint8_t peerAddrType, uint64_t peerIdentityAddr)
 Check if peer identity is in the resolving list. More...
 

Detailed Description

Typedef Documentation

typedef void(* bbBleResListAddrResNeeded_t) (uint64_t rpa, bool_t peer, uint8_t peerAddrType, uint64_t peerIdentityAddr)

Address resolution needed callback signature.

Definition at line 62 of file bb_ble_api_reslist.h.

Enumeration Type Documentation

anonymous enum

Resolvable address status.

Enumerator
BB_BLE_RESLIST_STATUS_ID_ADDR_NOT_IN_LIST 

Identity address is not in list.

BB_BLE_RESLIST_STATUS_ZERO_IRK 

IRK is zero for address.

BB_BLE_RESLIST_STATUS_RES_ADDR_UNASSIGNED 

Resolvable address is unassigned.

BB_BLE_RESLIST_STATUS_RES_ADDR_ASSIGNED 

Resolvable address is assigned.

Definition at line 42 of file bb_ble_api_reslist.h.

anonymous enum

Privacy modes.

Enumerator
BB_BLE_RESLIST_PRIV_MODE_NETWORK 

Network privacy mode.

BB_BLE_RESLIST_PRIV_MODE_DEVICE 

Device privacy mode.

Definition at line 51 of file bb_ble_api_reslist.h.

Function Documentation

bool_t bbBleIsPeerInResList ( uint8_t  peerAddrType,
uint64_t  peerIdentityAddr 
)

Check if peer identity is in the resolving list.

Parameters
peerAddrTypePeer identity address type.
peerIdentityAddrPeer identity address.
Returns
TRUE if peer addr is in the resolving list.
bool_t BbBleResListAdd ( uint8_t  peerAddrType,
uint64_t  peerIdentityAddr,
const uint8_t *  pPeerIrk,
const uint8_t *  pLocalIrk 
)

Add device to resolving list.

Parameters
peerAddrTypePeer identity address type.
peerIdentityAddrPeer identity address.
pPeerIrkPeer IRK.
pLocalIrkLocal IRK.
Returns
TRUE if successful, FALSE if list full.

Add device to resolving list.

bool_t BbBleResListCheckResolveLocal ( uint64_t  rpa,
uint8_t  peerAddrType,
uint64_t  peerIdentityAddr 
)

Check whether a local address has been resolved.

Parameters
rpaLocal resolvable private address
peerAddrTypePeer identity address type.
peerIdentityAddrPeer identity address.
Returns
TRUE if successful, FALSE if address has not been resolved.

Check whether a local address has been resolved. Because of timing constraints, addresses should not be resolved in this function; instead, the resolution callback should be invoked to schedule the operation later.

bool_t BbBleResListCheckResolvePeer ( uint64_t  rpa,
uint8_t *  pPeerAddrType,
uint64_t *  pPeerIdentityAddr 
)

Check whether a peer address has been resolved.

Parameters
rpaPeer resolvable private address
pPeerAddrTypeStorage for peer identity address type.
pPeerIdentityAddrStorage for peer identity address.
Returns
TRUE if successful, FALSE if address has not been resolved.

Check whether a peer address has been resolved. Because of timing constraints, addresses should not be resolved in this function; instead, the resolution callback should be invoked to schedule the operation later.

void BbBleResListClear ( void  )

Clear resolving list.

Clear all resolving list entries stored in the BB.

bool_t BbBleResListGeneratePeer ( uint8_t  peerAddrType,
uint64_t  peerIdentityAddr,
uint64_t *  pRpa 
)

Generate peer resolvable address.

Parameters
peerAddrTypePeer identity address type.
peerIdentityAddrPeer identity address.
pRpaStorage for peer resolvable private address.
Returns
TRUE if successful, FALSE if address not in list or peer IRK is zero.

Generate a peer resolvable address for a peer.

bool_t BbBleResListGetPrivacyMode ( uint8_t  peerAddrType,
uint64_t  peerIdentityAddr,
uint8_t *  pPrivMode 
)

Get privacy mode of a device.

Parameters
peerAddrTypePeer identity address type.
peerIdentityAddrPeer identity address.
pPrivModeStorage for privacy mode.
Returns
TRUE if successful, FALSE if address not in the list.

Get privacy mode of a device.

uint8_t BbBleResListGetSize ( void  )

Get resolving list size.

Returns
Total number of resolving list entries.

Get the resolving list capacity supported by the BB.

void BbBleResListHandleTimeout ( void  )

Handle timeout of local resolvable addresses.

A new local resolvable address will be generated for each entry in the resolving list.

bool_t BbBleResListIsLocalResolved ( uint64_t  rpa,
uint8_t  peerAddrType,
uint64_t  peerIdentityAddr 
)

Check whether a local address has been resolved.

Parameters
rpaLocal resolvable private address
peerAddrTypePeer identity address type.
peerIdentityAddrPeer identity address.
Returns
TRUE if successful, FALSE if address has not been resolved.
bool_t BbBleResListIsRpaUpd ( uint8_t  peerAddrType,
uint64_t  peerIdentityAddr 
)

Check if either local RPA or peer RPA is updated.

Parameters
peerAddrTypePeer identity address type.
peerIdentityAddrPeer identity address.
Returns
TRUE if either local RPA or peer RPA is updated.
uint8_t BbBleResListLocalStatus ( bool_t  peerAddrRand,
uint64_t  peerIdentityAddr 
)

Get status of local address in resolving list.

Parameters
peerAddrRandTRUE if peer identity address is random.
peerIdentityAddrPeer identity address.
Returns
Local address status.

Get the peer resolvable private address status

uint8_t BbBleResListPeerStatus ( bool_t  peerAddrRand,
uint64_t  peerIdentityAddr 
)

Get status of peer address in resolving list.

Parameters
peerAddrRandTRUE if peer identity address is random.
peerIdentityAddrPeer identity address.
Returns
Peer address status.

Get the peer resolvable private address status

bool_t BbBleResListReadLocal ( uint8_t  peerAddrType,
uint64_t  peerIdentityAddr,
uint64_t *  pRpa 
)

Read local resolvable address.

Parameters
peerAddrTypePeer identity address type.
peerIdentityAddrPeer identity address.
pRpaStorage for peer resolvable private address
Returns
TRUE if successful, FALSE if address not in list.

Get the local resolvable private address that is currently being used for the peer identity address.

bool_t BbBleResListReadPeer ( uint8_t  peerAddrType,
uint64_t  peerIdentityAddr,
uint64_t *  pRpa 
)

Read peer resolvable address.

Parameters
peerAddrTypePeer identity address type.
peerIdentityAddrPeer identity address.
pRpaStorage for peer resolvable private address
Returns
TRUE if successful, FALSE if address not in list.

Get the peer resolvable private address that is currently being used for the peer identity address.

bool_t BbBleResListRemove ( uint8_t  peerAddrType,
uint64_t  peerIdentityAddr 
)

Remove device from resolving list.

Parameters
peerAddrTypePeer identity address type.
peerIdentityAddrPeer identity address.
Returns
TRUE if successful, FALSE if address not in the list.

Remove device from resolving list.

bool_t BbBleResListResolveLocal ( uint64_t  rpa,
uint8_t *  pPeerAddrType,
uint64_t *  pPeerIdentityAddr 
)

Resolve local resolvable address.

Parameters
rpaLocal resolvable private address
pPeerAddrTypeStorage for peer identity address type.
pPeerIdentityAddrStorage for peer identity address.
Returns
TRUE if successful, FALSE if address could not be resolved.

Resolve a local resolvable address.

bool_t BbBleResListResolvePeer ( uint64_t  rpa,
uint8_t *  pPeerAddrType,
uint64_t *  pPeerIdentityAddr 
)

Resolve peer resolvable address.

Parameters
rpaPeer resolvable private address
pPeerAddrTypeStorage for peer identity address type.
pPeerIdentityAddrStorage for peer identity address.
Returns
TRUE if successful, FALSE if address could not be resolved.

Resolve a peer resolvable address.

void BbBleResListSetAddrResNeededCback ( bbBleResListAddrResNeeded_t  cback)

Set address resolution needed callback.

Parameters
cbackCallback.
bool_t BbBleResListSetPrivacyMode ( uint8_t  peerAddrType,
uint64_t  peerIdentityAddr,
uint8_t  privMode 
)

Set privacy mode of a device.

Parameters
peerAddrTypePeer identity address type.
peerIdentityAddrPeer identity address.
privModePrivacy mode.
Returns
TRUE if successful, FALSE if address not in the list.

Set privacy mode of a device.

bool_t BbBleResListUpdateLocal ( uint8_t  peerAddrType,
uint64_t  peerIdentityAddr,
uint64_t *  pRpa 
)

Update local resolvable address.

Parameters
peerAddrTypePeer identity address type.
peerIdentityAddrPeer identity address.
pRpaStorage for local resolvable private address
Returns
TRUE if successful, FALSE if address not in list.

Update the local resolvable private address that is currently being used for the peer identity address.

Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.