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

(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


Definition at line 10967 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/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 11003 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/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 11039 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/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 11060 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/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 11075 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/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 11086 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/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 10952 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/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 10953 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/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 10954 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/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 10955 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/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 10956 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/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 10957 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/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 10958 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/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 10959 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/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 10960 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/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 10961 of file /mnt/raid/workspaces/ws.RGfN6W7IO/overlay/gsdk/protocol/bluetooth/build/native/sw/bgapi/inc/sl_bt_api.h