Merge branch 'bugfix/nimble_host_rcv_pkt_length_check_v4.0' into 'release/v4.0'

NimBLE: host_rcv_pkt event buf size check. (v4.0)

See merge request espressif/esp-idf!10760
This commit is contained in:
Jiang Jiang Jian 2020-11-12 14:20:29 +08:00
commit e9ba0e05f2

View File

@ -341,6 +341,13 @@ static int host_rcv_pkt(uint8_t *data, uint16_t len)
totlen = BLE_HCI_EVENT_HDR_LEN + data[2];
assert(totlen <= UINT8_MAX + BLE_HCI_EVENT_HDR_LEN);
if (totlen > MYNEWT_VAL(BLE_HCI_EVT_BUF_SIZE)) {
ESP_LOGE(TAG, "Received HCI data length at host (%d) exceeds maximum configured HCI event buffer size (%d).",
totlen, MYNEWT_VAL(BLE_HCI_EVT_BUF_SIZE));
ble_hs_sched_reset(BLE_HS_ECONTROLLER);
return 0;
}
if (data[1] == BLE_HCI_EVCODE_HW_ERROR) {
assert(0);
}