Merge branch 'bugfix/set_eir_when_no_eir_data' into 'master'

change(bt/bluedroid): Send a name tag with zero length when there is no EIR data

Closes BTQABR2023-100

See merge request espressif/esp-idf!25805
This commit is contained in:
Bao Hong De 2023-09-13 14:05:14 +08:00
commit e5739ddd45

View File

@ -4324,6 +4324,17 @@ static void bta_dm_set_eir (char *local_name)
} }
} }
/* If there is no other data to be sent in the EIR packet, the Host shall
* send a name tag with zero length and the type field set to indicate
* that this is the complete name (i.e., total of 2 octets with length =
* 1).
*/
if (eir_type_num == 0) {
UINT8_TO_STREAM(p, 1);
UINT8_TO_STREAM(p, BTM_EIR_COMPLETE_LOCAL_NAME_TYPE);
free_eir_length -= 2;
}
if (free_eir_length) { if (free_eir_length) {
UINT8_TO_STREAM(p, 0); /* terminator of significant part */ UINT8_TO_STREAM(p, 0); /* terminator of significant part */
} }