Update oob data struct

Bug: 178007935
Test: compiles and runs
Tag: #feature
Change-Id: Ia06b8c65cac45694a3a9f01ca73bf6e0b3010d06
Merged-In: Ia06b8c65cac45694a3a9f01ca73bf6e0b3010d06
This commit is contained in:
Martin Brabham 2021-03-11 12:28:27 -08:00
parent e92e08a8a4
commit 7094c89e5c
2 changed files with 21 additions and 14 deletions

2
OWNERS
View file

@ -1,4 +1,4 @@
eisenbach@google.com
zachoverflow@google.com
elaurent@google.com
jpawlowski@google.com
malchev@google.com

View file

@ -258,19 +258,25 @@ typedef struct
void *val;
} bt_property_t;
/** Bluetooth Out Of Band data for bonding */
typedef struct
{
uint8_t le_bt_dev_addr[7]; /* LE Bluetooth Device Address */
uint8_t c192[16]; /* Simple Pairing Hash C-192 */
uint8_t r192[16]; /* Simple Pairing Randomizer R-192 */
uint8_t c256[16]; /* Simple Pairing Hash C-256 */
uint8_t r256[16]; /* Simple Pairing Randomizer R-256 */
uint8_t sm_tk[16]; /* Security Manager TK Value */
uint8_t le_sc_c[16]; /* LE Secure Connections Confirmation Value */
uint8_t le_sc_r[16]; /* LE Secure Connections Random Value */
} bt_out_of_band_data_t;
/** Represents the actual Out of Band data itself */
typedef struct {
// Both
uint8_t address[7]; /* Bluetooth Device Address (6) plus Address Type (1) */
uint8_t c[16]; /* Simple Pairing Hash C-192/256 (Classic or LE) */
uint8_t r[16]; /* Simple Pairing Randomizer R-192/256 (Classic or LE) */
uint8_t device_name[256]; /* Name of the device */
// Classic
uint8_t oob_data_length[2]; /* Classic only data Length. Value includes this
in length */
uint8_t class_of_device[2]; /* Class of Device (Classic or LE) */
// LE
uint8_t le_device_role; /* Supported and preferred role of device */
uint8_t sm_tk[16]; /* Security Manager TK Value (LE Only) */
uint8_t le_flags; /* LE Flags for discoverability and features */
uint8_t le_appearance[2]; /* For the appearance of the device */
} bt_oob_data_t;
/** Bluetooth Device Type */
@ -508,7 +514,8 @@ typedef struct {
/** Create Bluetooth Bond using out of band data */
int (*create_bond_out_of_band)(const RawAddress *bd_addr, int transport,
const bt_out_of_band_data_t *oob_data);
const bt_oob_data_t *p192_data,
const bt_oob_data_t *p256_data);
/** Remove Bond */
int (*remove_bond)(const RawAddress *bd_addr);