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 11926 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/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 11962 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/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 11998 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/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 12019 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/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 12034 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/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 12045 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/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 11911 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/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 11912 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/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 11913 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/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 11914 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/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 11915 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/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 11916 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/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 11917 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/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 11918 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/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 11919 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/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 11920 of file /mnt/raid/workspaces/ws.fiuNlsfVk/overlay/gsdk/protocol/bluetooth/build_release/bt_api/sw/bgapi/inc/sl_bt_api.h