fix(bt/bluedroid): fixed buffer overflow in BRSF

This commit is contained in:
Jin Cheng
2026-01-22 10:53:51 +08:00
committed by BOT
parent c2cf36d98c
commit f814a1125e
@@ -1378,6 +1378,11 @@ void bta_hf_client_at_parse(char *buf, unsigned int len)
osi_free(tmp_buff); osi_free(tmp_buff);
} }
/* prevent buffer overflow in cases where LEN exceeds available buffer space */
if (len > BTA_HF_CLIENT_AT_PARSER_MAX_LEN - bta_hf_client_cb.scb.at_cb.offset) {
return;
}
memcpy(bta_hf_client_cb.scb.at_cb.buf + bta_hf_client_cb.scb.at_cb.offset, buf, len); memcpy(bta_hf_client_cb.scb.at_cb.buf + bta_hf_client_cb.scb.at_cb.offset, buf, len);
bta_hf_client_cb.scb.at_cb.offset += len; bta_hf_client_cb.scb.at_cb.offset += len;