Commit Graph
2180 Commits
Author SHA1 Message Date
Island 5ac710ee56 Merge branch 'feat/ble_smp_repairing_hardening_v6.0' into 'release/v6.0'
feat(ble/bluedroid): add Kconfig options for BLE re-pairing hardening (6.0)

See merge request espressif/esp-idf!52421
2026-09-15 14:12:07 +08:00
Island 602c154453 Merge branch 'feat/support_pawr_connect_evt_v6.0' into 'release/v6.0'
feat(ble/bluedroid): Support PAWR connection event (6.0)

See merge request espressif/esp-idf!51442
2026-09-15 14:12:05 +08:00
Jin Cheng b40d860987 fix(bt/bluedroid): fixed OOB read dring mSBC sync word check 2026-09-15 09:34:13 +08:00
Wang Meng Yang 50b9a4b19e Merge branch 'fix/bt_hfp_v6.0' into 'release/v6.0'
fix(bt_hfp): Fix some bugs in hfp (v6.0)

See merge request espressif/esp-idf!52750
2026-09-15 09:30:43 +08:00
linruihao a3fa33aad3 fix(bt/bluedroid): enable sniff power management for PBAP client 2026-09-14 10:19:17 +08:00
Shreeyash Bhakare ec250befd6 fix(nimble): Send Prepare Write Request before Execute Write in write long with zero-length data 2026-09-11 14:57:16 +05:30
hejiaxin f43561e692 fix(bt_hfp): Fix some bugs in hfp
- Fix hfp callback data length
- Fix the solution of unknown AT command
2026-09-11 17:25:51 +08:00
Rahul Tank 8da0b7af1f Merge branch 'bugfix/nimble_issues_08092026_v6.0' into 'release/v6.0'
fix few nimble issues 08092026 (v6.0)

See merge request espressif/esp-idf!52601
2026-09-11 14:20:57 +05:30
Island 0d25ea96d7 Merge branch 'feat/opt_prefer_bond_device_when_evicting_overflow_bonds_v6.0' into 'release/v6.0'
fix(bt/bluedroid): prefer disconnected peers when evicting overflow bonds (6.0)

See merge request espressif/esp-idf!52610
2026-09-10 20:50:40 +08:00
Island ba6bbdeb41 Merge branch 'bugfix/fix_bluedroid_find_info_format_mismatch_v6.0' into 'release/v6.0'
fix(ble/bluedroid): restore find info PDU stop on UUID format mismatch (6.0)

See merge request espressif/esp-idf!52080
2026-09-10 20:50:30 +08:00
Rahul Tank 768198540a Merge branch 'bugfix/hardware_error_assert_v6.0' into 'release/v6.0'
fix(nimble): Add hardware error event handling as normal event (v6.0)

See merge request espressif/esp-idf!52553
2026-09-10 17:33:50 +05:30
Astha Verma 5048d40e1b fix(nimble): Fix nimble HID service discovery 2026-09-09 14:09:04 +05:30
Zhang Hai Peng a7e56b0fac fix(bt/bluedroid): prefer disconnected peers when evicting overflow bonds
When the bond list is full, drop the oldest disconnected device instead
of the oldest NVS entry, and allow a per-bond except flag so selected
devices are never auto-removed.


(cherry picked from commit bf86892eef)

Co-authored-by: zhanghaipeng <zhanghaipeng@espressif.com>
2026-09-09 14:25:55 +08:00
Rahul Tank 16cd970a43 Merge branch 'bugfix/fix_coex_crash_v6.0' into 'release/v6.0'
fix(nimble): Prevent crash in deinit when host init was not completed (v6.0)

See merge request espressif/esp-idf!52565
2026-09-09 11:15:32 +05:30
Wang Meng Yang 2441aff81d Merge branch 'bugfix/bta_disable_not_run_v6.0' into 'release/v6.0'
fix(bt/bluedroid): fixed BTA event dispatch race during module disable (v6.0)

See merge request espressif/esp-idf!51975
2026-09-09 11:39:09 +08:00
Rahul Tank 4cb6a3f218 fix(nimble): Prevent crash in deinit when host init was not completed 2026-09-08 15:35:29 +05:30
Rahul Tank 1e8fd755ad fix(nimble): Add hardware error event handling as normal event 2026-09-08 12:10:53 +05:30
Rahul Tank 454b29f257 fix(nimble): Fix for BLERP attack 2026-09-07 12:29:32 +05:30
Rahul Tank abd362c657 fix(nimble): Avoid NULL proc dereference in GATT client procedures 2026-09-06 09:44:45 +05:30
Wang Meng Yang 8d9613b259 Merge branch 'bugfix/delete_unused_avrcp_rcb_v6.0' into 'release/v6.0'
fix(bt/bluedroid): delete the unused AVRCP acceptor RCB when A2DP open fails (v6.0)

See merge request espressif/esp-idf!52413
2026-09-06 12:08:39 +08:00
Wang Meng Yang 70d938445d Merge branch 'fix/aireview_pbap_v6.0' into 'release/v6.0'
fix(bt_pbap): Fix some bugs in bluedroid PBAP (v6.0)

See merge request espressif/esp-idf!51728
2026-09-06 11:26:03 +08:00
Wang Meng Yang d5f9b93781 Merge branch 'change/refactor_hidh_datapath_v6.0' into 'release/v6.0'
Change/refactor hidh datapath[backport v6.0]

See merge request espressif/esp-idf!51279
2026-09-06 11:24:27 +08:00
Wang Meng Yang a9ad41e428 Merge branch 'bugfix/a2dp_api_init_check_v6.0' into 'release/v6.0'
fix(bt): Fix compatibility with A2DP API legacy usage methods (v6.0)

See merge request espressif/esp-idf!51328
2026-09-06 11:20:08 +08:00
Wang Meng Yang 06a411f81a Merge branch 'fix/aireview_obex_v6.0' into 'release/v6.0'
fix(bt_obex): fix some bugs in bluedroid obex (v6.0)

See merge request espressif/esp-idf!52005
2026-09-06 11:18:52 +08:00
Wang Meng Yang 2cf3ad6d31 Merge branch 'fix/bt_memory_v6.0' into 'release/v6.0'
fix(bt_memory): Reduce memory usage in transfer (v6.0)

See merge request espressif/esp-idf!52276
2026-09-06 11:16:58 +08:00
Rahul Tank c0b30a11db Merge branch 'bugfix/fix_stale_conn_cccd_v6.0' into 'release/v6.0'
fix(nimble): fix crash on disconnect due to stale per-connection CCCD pool (v6.0)

See merge request espressif/esp-idf!51951
2026-09-04 14:42:22 +05:30
Fu Hanxi 14297ada26 Merge branch 'ci/apply-common-scripts-v6.0' into 'release/v6.0'
ci: apply common-scripts refactor (v6.0)

See merge request espressif/esp-idf!50991
2026-09-04 09:33:06 +02:00
Rahul Tank a64ac3a8f6 fix(nimble): fix crash on disconnect due to stale per-connection CCCD pool 2026-09-04 12:17:48 +05:30
hejiaxin 340ce2b338 fix(bt_pbap): Fix some bugs in bluedroid PBAP
- Add sdp_seq to avoid p_ccb being free during sdp
- Changed some BTA_Pba functions to return non-void value
- Improve error catching and report
- Refactor bta_pba_client_response to avoid UAF problem
- Rearrange btc_pba_client init flag to avoid some disturbing bug
2026-09-04 11:55:05 +08:00
hejiaxin b2c98e72cd fix(bt_avrcp): size some AVRC command buffers 2026-09-04 11:51:39 +08:00
Zhi Wei Jian 2bada5b678 feat(ble/bluedroid): reject LE re-pairing that weakens an existing bond
Add smp_repairing_is_allowed() behind BT_BLE_SMP_HARDENED_REPAIRING so a
peer cannot replace an existing bond with one that has less MITM
protection, no Secure Connections, or a shorter key. Compare a preceding
Security Request against the pairing command AuthReq, not the
association-model result, and always allow first pairing.

A refusal keeps the stored bond. Pairing-failure erase is split by link
role: default is erase as Central and keep as Peripheral.

Closes BLERP (NDSS 2026) V3, V4 and V6.


(cherry picked from commit 88ea45be73)

Co-authored-by: zhiweijian <zhiweijian@espressif.com>
2026-09-04 11:03:52 +08:00
Zhi Wei Jian 6b9b3d969e fix(ble/bluedroid): harden LE bond handling across encryption
Keep the existing bond until the new pairing is encrypted, and on encryption
failure drop the link instead of clearing keys. Recovering from a peer that
really deleted the bond is opt-in through BT_BLE_SMP_UNBOND_ON_KEY_MISSING.

Closes BLERP (NDSS 2026) V5, and stops an unauthenticated Pairing Request
from dropping the stored keys (V2 exploitation).


(cherry picked from commit f864615d7d)

Co-authored-by: zhiweijian <zhiweijian@espressif.com>
2026-09-04 11:03:52 +08:00
ShenWeilong 3dbbafbbb3 fix(bt): fixed mempool deinit crash issue 2026-09-04 11:00:59 +08:00
hejiaxin 4226c1fdd4 fix(bt_obex): fix some bugs in bluedroid obex
- fix goepc wait state switch
- fix psm unbind's mismatch
- fix some resources leak
- fix goep connection's incorrect ternimation when congesting
- Add some NULL ptr check
2026-09-04 10:20:04 +08:00
Matteo Sandrin ffa442cb5d fix(bt/bluedroid): delete the unused AVRCP acceptor RCB when A2DP open fails 2026-09-04 10:07:55 +08:00
yangfeng 9905ffe7f5 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-09-04 10:02:48 +08:00
liqigan 822f1617bf change(bt/bluedroid): Used dynamic osi event to reduce lock cost 2026-09-04 09:41:19 +08:00
zhanghaipeng 6d23cb7278 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.
2026-09-04 09:40:32 +08:00
zhanghaipeng ad5a7d778e 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.
2026-09-04 09:40:32 +08:00
liqigan 1dcaf24129 fix(bt/bluedroid): Fixed HID host reconnection bug and enabled load HID devices
Closes https://github.com/espressif/esp-idf/issues/18335
2026-09-04 09:32:58 +08:00
liqigan 6c27057d67 change(bt/bluedroid): Refactored HCI ACL datapath 2026-09-04 09:32:58 +08:00
liqigan 20757b7933 change(bt/bluedroid): Refactored HID host datapath 2026-09-04 09:32:58 +08:00
Jin Cheng 10ee735306 fix(bt/bluedroid): fixed BTA event dispatch race during module disable
- Gate bta_sys_event() on both 'is_reg' and 'reg[id]' to prevent
  stale event delivery.
- Defer bta_sys_deregister() to the end of profile disable handlers
  to ensure pending DISABLE events are processed.
- Add disabling flag to HFP AG for tracking asynchronous teardown.
2026-09-04 09:13:18 +08:00
Rahul Tank 93f74eb464 Merge branch 'bugfix/fix_nimble_issues_3092026_v6.0' into 'release/v6.0'
feat(nimble): Fix few nimble issues 03092026(v6.0)

See merge request espressif/esp-idf!52355
2026-09-04 05:50:01 +05:30
Wang Meng Yang ff0587bde0 Merge branch 'bugfix/avrcp_version_compatibility_v6.0' into 'release/v6.0'
fix(bt): Fix the issue of AVRCP version compatibility (v6.0)

See merge request espressif/esp-idf!52087
2026-09-04 08:13:00 +08:00
Wang Meng Yang 2d5899d022 Merge branch 'fix/bluedroid_aireview_v6.0' into 'release/v6.0'
Fix/bluedroid aireview (v6.0)

See merge request espressif/esp-idf!51480
2026-09-04 07:55:43 +08:00
Fu Hanxi df8086abe3 fix(bluedroid): disable Clang vectorization for GATT
Avoid an Xtensa Clang vectorizer crash when compiling gatt_sr.c at -O2.
2026-09-03 20:25:13 +02:00
Rahul Tank 938ce4f4d1 fix(nimble): bound PAwR synced connect retries in the example 2026-09-03 21:27:16 +05:30
Astha Verma c525108495 fix(nimble): Fixed gatt caching crash on disconnect 2026-09-03 21:27:16 +05:30
Rahul Tank edf77262e7 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-09-03 21:27:16 +05:30