Address Resolving List#

Address Resolving List.

Provides support for adding and removing devices from the Resolving List in controller-based privacy.

Adding a peer device to the Resolving List allows the Bluetooth controller to resolve the address when the peer device is using privacy and is transmitting with a Resolvable Private Address (RPA). When the controller has resolved an address in a received Bluetooth packet such as an advertisement, the corresponding event will report the peer device's identity address even if a Resolvable Private Address was used over the air.

When the application has added a peer device to the Resolving List, the application may use the peer device's identity address in commands such as sl_bt_connection_open or sl_bt_sync_scanner_open even if the peer device is using privacy and is using a Resolvable Private Address over the air.

Enumerations#

enum
sl_bt_resolving_list_privacy_mode_network = 0x0
sl_bt_resolving_list_privacy_mode_device = 0x1
}

Specifies the Privacy Mode used for a peer device in the Resolving List.

Functions#

sl_status_t
sl_bt_resolving_list_add_device_by_bonding(uint32_t bonding, uint8_t privacy_mode)
sl_status_t
sl_bt_resolving_list_add_device_by_address(bd_addr address, uint8_t address_type, aes_key_128 key, uint8_t privacy_mode)
sl_status_t
sl_bt_resolving_list_remove_device_by_address(bd_addr address, uint8_t address_type)

Enumeration Documentation#

sl_bt_resolving_list_privacy_mode_t#

sl_bt_resolving_list_privacy_mode_t

Specifies the Privacy Mode used for a peer device in the Resolving List.

Enumerator
sl_bt_resolving_list_privacy_mode_network
sl_bt_resolving_list_privacy_mode_device

Definition at line 11483 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h

Function Documentation#

sl_bt_resolving_list_add_device_by_bonding#

sl_status_t sl_bt_resolving_list_add_device_by_bonding (uint32_t bonding, uint8_t privacy_mode)
Parameters
[in]bonding

The bonding handle

[in]privacy_mode

Enum sl_bt_resolving_list_privacy_mode_t. The Privacy Mode to use for the peer device. Values:

  • sl_bt_resolving_list_privacy_mode_network (0x0): Use Network Privacy Mode for the peer device

  • sl_bt_resolving_list_privacy_mode_device (0x1): Use Device Privacy Mode for the peer device

Default: sl_bt_resolving_list_privacy_mode_network (Use Network Privacy Mode for the peer device)

Add a device to the Resolving List based on its bonding handle.

This command is not available if the application uses the external bonding database provided by the component bluetooth_feature_external_bonding_database. In that configuration the application can use the command sl_bt_resolving_list_add_device_by_address and provide the peer's identity address and its Identity Resolving Key (IRK).

Returns

  • SL_STATUS_OK if successful. Error code otherwise.


Definition at line 11519 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h

sl_bt_resolving_list_add_device_by_address#

sl_status_t sl_bt_resolving_list_add_device_by_address (bd_addr address, uint8_t address_type, aes_key_128 key, uint8_t privacy_mode)
Parameters
[in]address

Bluetooth address of the peer device

[in]address_type

Enum sl_bt_gap_address_type_t. The peer device address type. Values:

  • sl_bt_gap_public_address (0x0): Public device address

  • sl_bt_gap_static_address (0x1): Static device address

[in]key

Identity Resolving Key (IRK) of the peer device in little endian format.

[in]privacy_mode

Enum sl_bt_resolving_list_privacy_mode_t. The Privacy Mode to use for the peer device. Values:

  • sl_bt_resolving_list_privacy_mode_network (0x0): Use Network Privacy Mode for the peer device

  • sl_bt_resolving_list_privacy_mode_device (0x1): Use Device Privacy Mode for the peer device

Default: sl_bt_resolving_list_privacy_mode_network (Use Network Privacy Mode for the peer device)

Add a device to the Resolving List based on its identity address and its Identity Resolving Key (IRK).

This command is typically only needed when the application uses the external bonding database provided by the component bluetooth_feature_external_bonding_database. When the application uses the built-in bonding database, the command sl_bt_resolving_list_add_device_by_bonding is more convenient.

Returns

  • SL_STATUS_OK if successful. Error code otherwise.


Definition at line 11555 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h

sl_bt_resolving_list_remove_device_by_bonding#

sl_status_t sl_bt_resolving_list_remove_device_by_bonding (uint32_t bonding)
Parameters
[in]bonding

The bonding handle

Remove a device from the Resolving List based on its bonding handle.

This command is not available if the application uses the external bonding database provided by the component bluetooth_feature_external_bonding_database. In that configuration the application can use the command sl_bt_resolving_list_remove_device_by_address and provide the peer's identity address.

Returns

  • SL_STATUS_OK if successful. Error code otherwise.


Definition at line 11576 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h

sl_bt_resolving_list_remove_device_by_address#

sl_status_t sl_bt_resolving_list_remove_device_by_address (bd_addr address, uint8_t address_type)
Parameters
[in]address

Bluetooth address of the peer device

[in]address_type

Enum sl_bt_gap_address_type_t. The peer device address type. Values:

  • sl_bt_gap_public_address (0x0): Public device address

  • sl_bt_gap_static_address (0x1): Static device address

Remove a device from the Resolving List based on its identity address.

Returns

  • SL_STATUS_OK if successful. Error code otherwise.


Definition at line 11591 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h

sl_bt_resolving_list_remove_all_devices#

sl_status_t sl_bt_resolving_list_remove_all_devices ()

Remove all devices from the Resolving List.

Returns

  • SL_STATUS_OK if successful. Error code otherwise.


Definition at line 11602 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h

Macro Definition Documentation#

sl_bt_cmd_resolving_list_add_device_by_bonding_id#

#define sl_bt_cmd_resolving_list_add_device_by_bonding_id
Value:
0x005d0020

Definition at line 11468 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h

sl_bt_cmd_resolving_list_add_device_by_address_id#

#define sl_bt_cmd_resolving_list_add_device_by_address_id
Value:
0x015d0020

Definition at line 11469 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h

sl_bt_cmd_resolving_list_remove_device_by_bonding_id#

#define sl_bt_cmd_resolving_list_remove_device_by_bonding_id
Value:
0x025d0020

Definition at line 11470 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h

sl_bt_cmd_resolving_list_remove_device_by_address_id#

#define sl_bt_cmd_resolving_list_remove_device_by_address_id
Value:
0x035d0020

Definition at line 11471 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h

sl_bt_cmd_resolving_list_remove_all_devices_id#

#define sl_bt_cmd_resolving_list_remove_all_devices_id
Value:
0x045d0020

Definition at line 11472 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h

sl_bt_rsp_resolving_list_add_device_by_bonding_id#

#define sl_bt_rsp_resolving_list_add_device_by_bonding_id
Value:
0x005d0020

Definition at line 11473 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h

sl_bt_rsp_resolving_list_add_device_by_address_id#

#define sl_bt_rsp_resolving_list_add_device_by_address_id
Value:
0x015d0020

Definition at line 11474 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h

sl_bt_rsp_resolving_list_remove_device_by_bonding_id#

#define sl_bt_rsp_resolving_list_remove_device_by_bonding_id
Value:
0x025d0020

Definition at line 11475 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h

sl_bt_rsp_resolving_list_remove_device_by_address_id#

#define sl_bt_rsp_resolving_list_remove_device_by_address_id
Value:
0x035d0020

Definition at line 11476 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h

sl_bt_rsp_resolving_list_remove_all_devices_id#

#define sl_bt_rsp_resolving_list_remove_all_devices_id
Value:
0x045d0020

Definition at line 11477 of file /mnt/raid/workspaces/ws.vHmYkJajL/overlay/gsdk/protocol/bluetooth/build_debug/bt_api/sw/bgapi/inc/sl_bt_api.h