fix(bt/bluedroid): fixed possible OOB write in btc_a2dp_sink_handle_inc_media

This commit is contained in:
Jin Cheng
2026-06-30 15:07:07 +08:00
parent 99aee96317
commit ca55d63de8
@@ -255,6 +255,12 @@ static void btc_a2dp_sink_handle_inc_media(BT_HDR *p_msg)
return; return;
} }
if (p_msg->offset < sizeof(UINT32)) {
APPL_TRACE_WARNING("%s: invalid offset %u for timestamp", __func__, p_msg->offset);
osi_free(p_msg);
return;
}
if (p_msg->layer_specific != a2dp_sink_local_param.media_pkt_seq_num.expected_seq_num) { if (p_msg->layer_specific != a2dp_sink_local_param.media_pkt_seq_num.expected_seq_num) {
/* Because the sequence number of some devices is not recounted */ /* Because the sequence number of some devices is not recounted */
if (!a2dp_sink_local_param.media_pkt_seq_num.seq_num_recount || if (!a2dp_sink_local_param.media_pkt_seq_num.seq_num_recount ||