Commit Graph
5469 Commits
Author SHA1 Message Date
Astha Verma 9201f7cbea fix(nimble): fix l2cap_coc throughput disconnect on esp32c2 2026-09-18 14:04:18 +05:30
Shreeyash Bhakare 7cfa8f909d fix(nimble): Send Prepare Write Request before Execute Write with zero-length data 2026-09-16 17:26:22 +05:30
Astha Verma 254d11666f fix(nimble): Fix nimble HID service discovery 2026-09-16 17:25:58 +05:30
Rahul Tank 060d49ec5e fix(nimble): Prevent crash in deinit when host init was not completed 2026-09-16 17:25:32 +05:30
Rahul Tank 595448c891 fix(nimble): Fix for BLERP attack 2026-09-16 17:25:07 +05:30
Rahul Tank 42e7cd35f7 fix(nimble): Avoid NULL proc dereference in GATT client procedures 2026-09-16 17:24:30 +05:30
Rahul Tank 2070731aee fix(nimble): fix crash on disconnect due to stale per-connection CCCD pool 2026-09-16 17:23:52 +05:30
ShenWeilong 66558f8c46 fix(bt): fixed mempool deinit crash issue 2026-09-16 17:22:59 +05:30
Rahul Tank 4665b93c66 fix(nimble): bound PAwR synced connect retries in the example 2026-09-16 17:21:46 +05:30
Astha Verma fc17a5d782 fix(nimble): Fixed gatt caching crash on disconnect 2026-09-16 17:21:06 +05:30
Jiang Jiang Jian 448a87d7d9 Merge branch 'idf/ble_mesh_iv_recover_v5.3' into 'release/v5.3'
feat(ble_mesh): Enable IV Index recovery by default (5.3)

See merge request espressif/esp-idf!51969
2026-09-04 17:25:48 +08:00
Zhang Hai Peng c149a80c15 fix(ble/bluedroid): allow osi_event re-post during POSTING window
Do not reject osi_thread_post_event() when only POSTING is set.
QUEUED already prevents double-queueing; rejecting POSTING caused
HCI downstream lost wakeup. Add generic osi_event and hci downstream
diagnostics for post failures.


(cherry picked from commit 011138ffd9)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-08-25 19:55:18 +08:00
Zhang Hai Peng 6f3d6977fe docs(bt): clarify Bluedroid GATT signed write API comments
Correct misleading CHAR_PROP_BIT_AUTH wording and document CSRK-based
signed write usage for server permissions and client write APIs.


(cherry picked from commit 8d230c7650)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-08-25 19:55:18 +08:00
Liu Linyan a92bea85b8 feat(ble_mesh): Enable IV Index recovery by default
(cherry picked from commit 8e59eb4850)

Co-authored-by: Liu Linyan <liulinyan@espressif.com>
2026-08-24 09:09:36 +08:00
Jiang Jiang Jian d41a3436b1 Merge branch 'bugfix/irk_smp_bond_issue_v5.3' into 'release/v5.3'
fix(nimble): Fix unpair_oldest_peer deleting wrong device (v5.3)

See merge request espressif/esp-idf!51839
2026-08-19 20:28:50 +08:00
Jiang Jiang Jian e6aa5793fe Merge branch 'bugfix/strncpy_compilation_issue_v5.3' into 'release/v5.3'
fix(bluedroid): Fix the compilation issue of BCM_STRNCPY_S (v5.3)

See merge request espressif/esp-idf!51746
2026-08-19 20:24:49 +08:00
Rahul Tank f3e9bcbe0f fix(nimble): Fix unpair_oldest_peer deleting wrong device
Sort bond entries by bond_count after in-place updates to maintain correct
eviction order, and log IRK resolving-list failures instead of failing the bond.
2026-08-18 12:50:36 +05:30
yangfeng 653d86edc7 fix(bluedroid): Fix the compilation issue of BCM_STRNCPY_S 2026-08-18 14:20:33 +08:00
yangfeng 9a6f169ef4 fix(bt): do not cap AVDTP Discover results by local SEP count
- Closes https://github.com/espressif/esp-idf/issues/18848
2026-08-18 14:20:10 +08:00
Rahul Tank 8e50d7d8f1 fix(nimble): Add separate helper functions to register notification/indication 2026-08-18 07:39:02 +05:30
Wang Meng Yang 4e61272f2c Merge branch 'change/refactor_hidh_datapath_v5.3' into 'release/v5.3'
Change/refactor hidh datapath[backport v5.3]

See merge request espressif/esp-idf!51282
2026-08-17 10:24:57 +08:00
Rahul Tank e08dd79258 fix(nimble): Add fix to handle service reset during server start 2026-08-14 13:55:59 +05:30
Rahul Tank 725317c40d Merge branch 'bugfix/fix_add_resolve_after_connect_master_v5.3' into 'release/v5.3'
fix(nimble): Fix adding device to resolving list when defer connection (v5.3)

See merge request espressif/esp-idf!51740
2026-08-14 10:46:06 +05:30
Rahul Tank a09cdb86a5 fix(nimble): Fix adding device to resolving list when defer connection 2026-08-13 14:59:19 +05:30
yangfeng 7e5434548f fix(bt): Fix compatibility with A2DP API legacy usage methods
- Modify the timing of API calls in the A2DP example
- Closes https://github.com/espressif/esp-idf/issues/18786
2026-08-13 08:55:23 +08:00
Rahul Tank fde710f70b fix(nimble): Added change to stop adv before starting new adv 2026-08-11 12:46:59 +05:30
Rahul Tank 0f6a4e390d fix(nimble): Remove extra free to avoid double free 2026-08-10 19:28:35 +05:30
liqigan 71decf1197 fix(bt/bluedroid): Fixed use after free issue on osi_event_delete 2026-08-07 08:05:20 +08:00
liqigan ee4eed0824 fix(bt/bluedroid): Fixed HID host reconnection bug and enabled load HID devices
Closes https://github.com/espressif/esp-idf/issues/18335
2026-08-07 08:05:20 +08:00
liqigan 7a32c84988 change(bt/bluedroid): Refactored HCI ACL datapath 2026-08-07 08:05:20 +08:00
liqigan e47f74ffc0 change(bt/bluedroid): Refactored HID host datapath 2026-08-07 08:05:20 +08:00
Jiang Jiang Jian 42bca686cb Merge branch 'feat/support_pawr_connect_evt_v5.3' into 'release/v5.3'
feat(ble/bluedroid): Support PAWR connection event (5.3)

See merge request espressif/esp-idf!51439
2026-08-05 12:31:57 +08:00
Jiang Jiang Jian 37d29951af Merge branch 'fix/ble_mesh_added_gatt_err_rsp_v5.3' into 'release/v5.3'
fix(ble_mesh): align GATTS read/write response handling with ATT (5.3)

See merge request espressif/esp-idf!51460
2026-08-05 12:31:23 +08:00
Jiang Jiang Jian bffa546626 Merge branch 'feat/bt_in_psram_v5.3' into 'release/v5.3'
feat(bluedroid): Add config to place btu and hci task stack in psram (v5.3)

See merge request espressif/esp-idf!51494
2026-08-05 12:30:48 +08:00
Island b31538482f Merge branch 'fix/ble_log_compression_add_local_header_file_v5.3' into 'release/v5.3'
feat(ble_log): mirror local compression headers (5.3)

See merge request espressif/esp-idf!50949
2026-08-04 19:48:16 +08:00
hejiaxin 91c3b74df1 feat(bluedroid): Add config to place btu and hci task stack in psram
- Also adjust the osi_thread_stop implementation.
2026-08-04 14:56:14 +08:00
Rahul Tank 9febc03831 Merge branch 'bugfix/add_nimble_cve_v5.3' into 'release/v5.3'
fix(nimble): Fixes for various NimBLE CVEs (v5.3)

See merge request espressif/esp-idf!51204
2026-08-04 12:17:23 +05:30
Wang Meng Yang f0407c5a38 Merge branch 'fix/aireview_critical_v5.3' into 'release/v5.3'
fix: Fix some critical bugs in classic bt (v5.3)

See merge request espressif/esp-idf!51292
2026-08-04 14:15:49 +08:00
Wang Meng Yang b723d09933 Merge branch 'fix/bluedroid_aireview_v5.3' into 'release/v5.3'
Fix/bluedroid aireview (v5.3)

See merge request espressif/esp-idf!51297
2026-08-04 14:12:13 +08:00
Luo Xu d6eed489b0 feat(ble_log): mirror local compression headers
(cherry picked from commit ee732a4591)

Co-authored-by: luoxu <luoxu@espressif.com>
2026-08-04 11:57:57 +08:00
Rahul Tank 9a36f17232 fix(nimble): Fixes for various NimBLE CVEs 2026-08-03 23:49:23 +05:30
Luo Xu 2d378a5563 fix(ble_mesh): align GATTS read/write response handling with ATT
bt_mesh_bta_gatts_cb did not always answer ATT Read/Write Requests:
- READ: on a callback error it only logged a warning and sent nothing; a
  0-byte read (Read Blob at an offset equal to the value length) also sent
  nothing, although it is a successful empty read.
- WRITE: on a callback error it sent nothing, and a partial/zero write was
  treated as success.
- Both: when the handle was not found or the attribute had no read/write
  callback, the request was silently dropped.

An ATT Request must always be answered:

- READ: len >= 0 is success -> Read Response (a 0-byte read yields an empty
  value); len < 0 -> ATT Error Response carrying the callback's error code
  (-len, since BLE_MESH_GATT_ERR(x) == -x). The copy length is clamped to
  the source buffer size as a defensive bound. If the handle is unknown or
  the attribute has no read callback, respond with INVALID_HANDLE /
  READ_NOT_PERMITTED.
- WRITE: when need_rsp is set, always reply. len == write length -> Write
  Response; otherwise (negative ATT error, partial write, or 0) -> ATT
  Error Response (the negative code, or UNLIKELY for partial/0). If the
  handle is unknown or the attribute has no write callback, respond with
  INVALID_HANDLE / WRITE_NOT_PERMITTED. Write Without Response still sends
  no response.

A non-success status passed to BTA_GATTS_SendRsp is turned into an ATT
Error Response by the GATT layer (gatt_sr_process_app_rsp ->
gatt_send_error_rsp).


(cherry picked from commit ed1f4de3a3)

Co-authored-by: luoxu <luoxu@espressif.com>
2026-08-03 21:43:35 +08:00
Zhi Wei Jian 7eae05b8d9 fix(ble/bluedroid): Build LE event mask from host feature macros
(cherry picked from commit 68dff5d798)

Co-authored-by: zhiweijian <zhiweijian@espressif.com>
2026-08-03 15:25:43 +08:00
Zhi Wei Jian 5b0f43d724 feat(ble/bluedroid): Support PAWR connection event
(cherry picked from commit 7da7fa42ac)

Co-authored-by: zhiweijian <zhiweijian@espressif.com>
2026-08-03 15:25:43 +08:00
Island 5a4288e8ff Merge branch 'fix/ble_log_compression_issue_on_windows_v5.3' into 'release/v5.3'
fix(bt): fix BLE log compression build on Windows (5.3)

See merge request espressif/esp-idf!51243
2026-08-03 11:31:23 +08:00
Island b01be03a5a Merge branch 'feat/update_mesh_lib_to_supported_get_lib_ver_v5.3' into 'release/v5.3'
Feat/update mesh lib to supported get lib ver (5.3)

See merge request espressif/esp-idf!51170
2026-08-03 11:30:38 +08:00
Rahul Tank 1f314eff3e fix(nimble): Deliver PAwR peripheral CONNECT via sync callback 2026-07-30 16:35:02 +05:30
hejiaxin 5b5e80c12a fix(bt_stack): Fix some critical bugs in classic_bt stack
related: obex, smp, pbap, sdp, rfcomm, stack_dm

- Deinit function doesn't delete connection when OBEX_DYNAMIC_MEMORY is on
- Union tGOEPC_DATA sometimes is free by osi_free in some cases when it contains mtu_id
- Add correct free and return solution after fail
- Fix symbol mistake in mod calculation
- Fix pointer-related UAF problems and memory free problems
- Fix buffer overflows and out-of-bounds access
- Fix infinite loops triggered by integer overflow wraparound
- Fix double free
- Change layer_specific usage to avoid heap overflow
- Add some NULL check for pointers
- Fix sdp_db free function
- Fix state table mismatch
2026-07-30 17:44:37 +08:00
Island 7a1c86344a Merge branch 'change/ble_update_lib_20260717_v5.3' into 'release/v5.3'
change(ble): [AUTO_MR] 20260717 - Update ESP BLE Controller Lib (5.3)

See merge request espressif/esp-idf!50929
2026-07-30 10:08:02 +08:00
Jin Cheng 28b00497ee fix(bt/bluedroid): fixed incorrect eSCO packet type validation under secure connection mode in BlueDroid 2026-07-29 17:30:36 +08:00