Jin Cheng
33dd9beb7b
fix(bt): fixed semaphore deletion condition in UART DMA deinit
2026-01-19 16:48:47 +08:00
Jin Cheng
17bf90c266
fix(bt): enhanced packet length check in sdp_server.c
2026-01-19 16:48:47 +08:00
Jin Cheng
0127452b05
fix(bt): enhanced packet length check for avrc_pars_vendor_cmd
2026-01-19 16:48:47 +08:00
Jin Cheng
11852eb312
fix(bt): enhanced packet length check for HCI module
2026-01-19 16:48:47 +08:00
Jin Cheng
a398f76b86
fix(bt): validated UUID parameters in BTA_JvStartDiscovery
2026-01-19 16:48:44 +08:00
Jin Cheng
c510c8abf8
fix(bt/bluedroid): A2DP source at acceptor side will miss ESP_A2D_AUDIO_CFG_EVT
2026-01-19 16:47:27 +08:00
Jin Cheng
a0030af291
fix(bt/bluedroid): add status management for audio sink service channel
2026-01-15 09:11:52 +08:00
Jin Cheng
cf13b1db22
fix(bt/controller): fixed wrong key type during changing connection link key
2026-01-09 18:12:06 +08:00
Jin Cheng
af327e091d
fix(bt/bluedroid): cleaned the code according to the tool cppcheck
2025-12-19 11:17:18 +08:00
Jin Cheng
3bd5258fe4
fix(bt/bluedroid): fixed possible OOB read in smp_br_data_received
2025-12-19 11:17:18 +08:00
Jin Cheng
8c838d90c5
fix(bt/bluedroid): drop connection when atttempting to disable encryption
2025-12-19 11:17:18 +08:00
Jin Cheng
50c4f60ad5
fix(bt/bluedroid): fixed an integer overflow bug in attp_build_read_multi_cmd
2025-12-19 11:17:18 +08:00
Jin Cheng
fa22b3cac2
fix(bt/bluedroid): fixed an integer overflow bug in avdt_msg_asmbl
2025-12-19 11:17:18 +08:00
Jin Cheng
72a8251a45
fix(bt/bluedroid): fixed an OOB bug in bta_av_setconfig_rej
2025-12-19 11:17:18 +08:00
Jin Cheng
72b2acf9c5
fix(bt/bluedroid): fixed an OOB bug in btm_read_rssi_complete
2025-12-19 11:17:18 +08:00
Jin Cheng
9c939b8df2
fix(bt/bluedroid): fixed an OOB bug in btm_delete_stored_link_key_complete
2025-12-19 11:17:18 +08:00
Jin Cheng
4c5e31394b
fix(bt/bluedroid): fixed an OOB bug in btm_read_tx_power_complete
2025-12-19 11:17:18 +08:00
Jin Cheng
68865736c4
fix(bt/bluedroid): fixed an OOB bug in btm_create_conn_cancel_complete
2025-12-19 11:17:18 +08:00
Jin Cheng
a812ec11ce
fix(bt/bluedroid): fixed an OOB bug in btm_read_local_oob_complete
2025-12-19 11:17:18 +08:00
Jin Cheng
45dd55dbf6
fix(bt/bluedroid): fixed an OOB write in SDP_AddAttribute
2025-12-19 11:17:18 +08:00
Jin Cheng
c6bd4d714f
fix(bt/bluedroid): report failure when not able to connect to AVRCP
2025-12-19 11:17:18 +08:00
Jin Cheng
947af75cad
fix(bt/bluedroid): fixed buffer overflow in BRSF
2025-12-19 11:17:18 +08:00
Jin Cheng
d3155a5a4f
fix(bt/bluedroid): added negative length check in process_service_search_rsp
2025-12-19 11:17:18 +08:00
Jin Cheng
190d7690f7
fix(bt/bluedroid): fixed OOB read in SDP server continuation length
2025-12-19 11:17:18 +08:00
Jin Cheng
c7f1b1a954
fix(bt/bluedroid): added length check when copy AVDTP packet
2025-12-19 11:17:18 +08:00
Jin Cheng
e49da3f737
fix(bt/bluedroid): fixed OOB read in AT_SKIP_RESET
2025-12-19 11:17:18 +08:00
Jin Cheng
7d333a6324
fix(bt/bluedroid): fixed OOB write in bta_hf_client_handle_cind_list_item
2025-12-19 11:17:18 +08:00
Jin Cheng
1f891f31a5
fix(bt/bluedroid): added boundary check when reading SDP attribute response packet
2025-12-19 11:17:18 +08:00
Jin Cheng
3c02ac6b64
fix(bt/bluedroid): fixed potential OOB read in the avrc_pars_vendor_rsp
2025-12-19 11:17:18 +08:00
Jin Cheng
a6ba548174
fix(bt/bluedroid): fixed potential OOB read in the reporting handler
...
Thanks to Luigino Camastra and Pavel Kohout from Aisle Research as
co-reporters for discovering and reporting this issue.
2025-12-19 11:17:18 +08:00
Jin Cheng
ce1677a204
fix(bt/bluedroid): fixed a potential overflow about the media payload offset
...
This variable is uint16_t, and is possible to overflow when the length
of headder extension is larger. Here we compare with the data length to
prevent any exceptions.
2025-12-19 11:17:18 +08:00
Jin Cheng
208eb56736
fix(bt/bluedroid): fixed p_data null dereference in l2c_csm_open
2025-12-19 11:17:17 +08:00
Jin Cheng
cd0391cc71
fix(bt/bluedroid): fixed Use-After-Free in btm_sec_[dis]connected
2025-12-19 11:17:17 +08:00
Jin Cheng
dea17a9260
fix(bt/bluedroid): reject device with same address in legacy paring
2025-12-19 11:17:17 +08:00
Jin Cheng
5e5646cb3c
fix(bt/bluedroid): ignore AVCT commands that are too long
2025-12-19 11:17:17 +08:00
Jin Cheng
63d5970c1d
fix(bt/bluedroid): use osi_calloc to zero reserved fields in AVRCP
2025-12-19 11:17:17 +08:00
Jin Cheng
1b1e00ffb1
fix(bt/bluedroid): make sure SDP only start discovery once
2025-12-19 11:17:17 +08:00
Jin Cheng
d16ad1789c
fix(bt/bluedroid): check event ID if of register notification from remote to avoid OOB write
2025-12-19 11:17:17 +08:00
Jin Cheng
990dcc431a
fix(bt/blurdoird): check Classic key before cross-key derivation
2025-12-19 11:17:17 +08:00
Jin Cheng
f144d4e0f7
fix(bt/blurdoird): enable bitpool snity checks
2025-12-19 11:17:17 +08:00
Jin Cheng
45aeaf97c4
fix(bt/bluedroid): fixed possible access to NULL in l2c_fcr_clone_buf
2025-12-16 11:37:58 +08:00
Jin Cheng
bec5090de5
fix(bt/controller): Fixed some controller bugs
...
- Fixed Bluetooth hardware error of 'CHMAP_ERROR'
- Fixed encryption collision bug
2025-11-13 19:45:38 +08:00
JinCheng
2f50cb2727
fix(bt/bluedroid): update the COD before enabling inquiry scan
2025-11-11 15:46:47 +08:00
Jin Cheng
5b3185168d
fix(bt/blurdoird): fixed an OOB write in bta_dm_sdp_result
2025-11-10 17:05:48 +08:00
Jin Cheng
565fa98d0c
fix(bt/bluedroid): fixed potential OOB in AVRCP vendor command composition
2025-10-14 11:55:47 +08:00
Jin Cheng
3fa9d23ad2
fix(bt/controller): fixed several controller bugs
2025-09-29 09:59:42 +08:00
Jin Cheng
ac2be3a58e
fix(bt/controller): fixed the sniff anchor point can be mismatch from central and peripheral
2025-09-28 11:33:25 +08:00
JinCheng
5a6193ae14
fix(bluedroid): removed the code relying on compiler-specific extension for FAM in union
2025-09-27 11:28:54 +08:00
JinCheng
075ed218ca
fix(bt/bluedroid): fixed potential OOB in Bluedroid
2025-09-25 10:20:10 +08:00
JinCheng
88722d50d5
fix(bt/controller): fixed some controller bugs
2025-08-13 19:27:35 +08:00
JinCheng
81d7ce47db
fix(bt/bluedroid): correct a description error in the GAP header file
2025-08-13 19:27:35 +08:00
JinCheng
54f1f22e69
fix(esp_phy): update esp32 librtc.a for coex problems
...
- ESP32 phy_version: 4861, b71b5ad, Aug, 5 2025
- ESP32 librtc version: 6758f983, Mar 22 2024, 13:39:26
2025-08-05 12:08:57 +08:00
JinCheng
720108b220
fix(bt/bluedroid): safe string returns and cleanups for bt_discovery example
2025-08-01 09:40:21 +08:00
Jin Cheng
b1ea7f7ae6
fix(bt/controller): update libbtdm_app.a
...
- fixed errors in the coexistance of ACL and SCO
- fixed dynamic priority config error in dual mode
2025-04-18 07:43:24 +08:00
Jin Cheng
cd8fa5c46f
fix(bt/bluedroid): fixed memory leaks in SPP callback mode
2025-02-26 19:12:47 +08:00
Jin Cheng
309747bf9a
fix(bt/controller): fixed some controller bugs on ESP32.
...
1. added a VSC to control whether to initiate lmp_auto_rate
- Closes https://github.com/espressif/esp-idf/issues/15133
2. fixed EA resource cleanup error after SNIFF negotiation failure
- Closes https://github.com/espressif/esp-idf/issues/13605
3. removed an assertion in SCO data TX handler after disconnection
- Closes https://github.com/espressif/esp-idf/issues/15176
2025-02-26 16:31:06 +08:00
Jin Cheng
eb68ef4cc1
fix(bt/controller): fixed missing critical protections on linked-list structure of (e)SCO buffers
2025-01-07 18:56:23 +08:00
Jin Cheng
185b4d9d44
fix(bt/bluedroid): fixed access NULL in HFP callback handler
2024-12-05 13:19:18 +08:00
Jin Cheng
5e0a73bc56
fix(bt/controller): Fixed some bugs on esp32 controller
...
- Added VSC to update local Bluetooth clock
- Added critical protection for the free method for sync buffers
- Fixed zero attempt value set by role switch
2024-11-26 18:03:11 +08:00
Jin Cheng
fdcf89ae6b
feat(bt/bluedroid): added events to indicate the profile states of HFP
2024-11-22 17:14:16 +08:00
Jin Cheng
2b334d1dfa
fix(bt/bluedroid): disconnect SDP connection on receiving incorrect response
2024-11-20 08:20:40 +08:00
Jin Cheng
cfdefd3e03
fix(bt/controller): Fixed some controller bugs on ESP32
...
- Fixed wrong logic in handling sniff transaction collision at slave
side
- Fixed the issue ACL is stopped too early before eSCO
2024-11-08 12:53:56 +08:00
Jin Cheng
c79eb0d5bf
fix(bt/bluedroid): AG should send OK or other error codes to HF client
...
when it is driven by HF to initiate a call.
2024-11-08 12:51:00 +08:00
Jin Cheng
e2241f1fc1
fix(bt/controller): Fixed some controller bugs on ESP32
...
- Fixed access NULL in SCO frame end
Closes https://jira.espressif.com:8443/browse/IDFGH-10796
- Added LAP checking for Periodic Inquiry
- Removed an inproper assertion in SCO module
- Fixed wrong logic in key exchange when
LMP transaction collision occurred
- Fixed the using of wrong error code in
the transaction collision of role switch
2024-10-12 09:01:48 +08:00
Jin Cheng
9872a7bbd1
fix(bt/bluedroid): fixed AG and HF client cannot enter/exit sniff mode
2024-10-10 16:23:09 +08:00
Jin Cheng
6d85d86fe1
Revert "Disable sniff mode during (e)SCO connection."
...
This reverts commit 39a5eb84f3 .
2024-10-10 16:10:11 +08:00
Jin Cheng
22fad3f0a8
fix(bt/controller): Fixed some controller bugs on ESP32
...
- Fixed access NULL in SCO frame end
Closes https://jira.espressif.com:8443/browse/IDFGH-10796
- Added LAP checking for Periodic Inquiry
- Removed an inproper assertion in SCO module
- Fixed wrong logic in key exchange when
LMP transaction collision occurred
- Fixed the using of wrong error code in
the transaction collision of role switch
2024-09-23 15:33:11 +08:00
Jin Cheng
3964fb1fa8
fix(bt/controller): Removed an improper assertion in ACL link driver
...
- See more from jira BT-3591
2024-07-12 19:35:18 +08:00
Jin Cheng
b79fcbb9d7
fix(bt/controller): Parse out the correct packet types from Host parameters
...
- For HCI command HCI_Enhanced_Setup_Synchronous_Connection
2024-04-30 17:38:58 +08:00
Jin Cheng
081dc80eb8
fix(bt/bluedroid): allocate memory for control block of HFP Audio Gateway in its initialization when dynamic memory is wnabled
2024-04-15 11:20:55 +08:00
Jin Cheng
98230244df
fix(bt/controller): Use embedded assembly to get access to DPORT registers
2024-04-01 18:53:47 +08:00
Jin Cheng
82542d2e96
feat(bt/bluedroid): added a VSC to set minimal encryption key size
2024-03-25 10:50:06 +08:00
Jin Cheng
45af060963
change(bt/bluedroid): Use BTC util to convert HCI status to ESP status
2024-03-20 10:38:44 +08:00
Jin Cheng
cdb2f2c570
fix(bt/controller): Fixed 3 esp32 bt controller bugs
...
update esp32 bt-lib (952debf4)
1. Increased the length of queue for coexist requestions
2. fix(bt/controller): Cleared BT SNIFF when no connections exists
3. fix(bt/controller): Corrected a typo in coex module
2024-02-29 11:02:37 +08:00
Jin Cheng
f4f26e94bd
feat(bt/bluedroid): Moved the memory allocation of HF AG control blocks to BTC module
2024-02-28 20:30:38 +08:00
Jin Cheng
20f2207d5f
Merge branch 'bugfix/mem_leak_op_dev_name' into 'master'
...
fix(bt/bluedroid): Avoided possible memory leak in the module of BT device
See merge request espressif/esp-idf!29141
2024-02-28 15:54:24 +08:00
Jin Cheng
a288640655
fix(bt/bluedroid): Avoided possible memory leak in the module of BT device
2024-02-23 14:14:50 +08:00
Jin Cheng
057eb7061d
feat(bt/bluedroid): Added an event to notify the encryption mode to applicaiton layer
2024-01-05 09:40:38 +08:00
Jin Cheng
8582f9bedf
fix(bt/bluedroid): corrected the strings of A2DP audio states
2024-01-04 17:52:11 +08:00
Jin Cheng
6ee9b95960
feat(bt/bluedroid): Added report for the type of link key in ESP_BT_GAP_AUTH_CMPL_EVT
2023-12-29 16:22:04 +08:00
Jin Cheng
42f19d657a
docs(bt/bluedroid): update API documents of SPP
2023-12-26 09:13:20 +08:00
Jin Cheng
a3f68aef8a
feat(bt/bluedroid): Added API to get local device name
2023-12-15 19:30:12 +08:00
Jin Cheng
e1a5122dbc
Merge branch 'fix/build_error_in_compiler_performance_mode' into 'master'
...
fix(bt/bluedroid): fixed build error when compiler in performace mode
Closes IDFGH-11637
See merge request espressif/esp-idf!27816
2023-12-12 18:56:42 +08:00
Jin Cheng
e78209ad47
fix(bt/bluedroid): Disabled Sniff Subrating temporarily as it did not work well
2023-12-05 20:10:03 +08:00
Jin Cheng
58256d8c4b
fix(bt/bluedroid): Changed the default air mode to invalid value
2023-12-05 20:10:03 +08:00
Jin Cheng
dba328d9d5
fix(bt/bluedroid): Removed redundant operation of SCO clean up
2023-12-05 20:10:03 +08:00
Jin Cheng
0f9e8687ee
fix(bt/bluedroid): Corrected the definitions of HF Client callback events
2023-12-05 20:10:00 +08:00
Jin Cheng
48d410e10d
fix(bt/bluedroid): Set the alarm_arg to NULL after releasing to avoid double free in l2cap
2023-11-30 19:47:57 +08:00
Jin Cheng
823e0711c9
fix(bt/bluedroid): Set the alarm_arg to NULL after releasing to avoid double free
2023-11-29 15:55:46 +08:00
Jin Cheng
57e3e97497
fix(bt/bluedroid): Avoided crash of LoadProhibited during HFP AG deinitialization
...
Move the release of the control blocks from the start
of deinitialization to the profile disabled event.
2023-11-17 09:39:46 +08:00
Jin Cheng
eab9037b1c
fix(bt/bluedroid): Added dynamic memory allocation for HFP control blocks
2023-11-16 20:10:29 +08:00
Jin Cheng
f5c15be581
fix(bt/bluedroid): corrected the API documents of profile HFP and A2DP
2023-11-15 15:34:27 +08:00
Jin Cheng
4edd531fe3
fix(bt/bluedroid): Added some argument check in APIs of HFP AG
2023-11-15 15:18:22 +08:00
Jin Cheng
97e9eb5ca8
fix(bt/bluedroid): Fix the crash of invalid access to released resources
...
It is caused by the delayed timer is alarmed after esp_spp_deinit.
2023-11-15 02:12:14 +00:00
Jin Cheng
46327936cb
feat(bt/bluedroid): Added an API to specify data types for ACL-U traffic
2023-11-02 17:43:04 +08:00
Jin Cheng
1f2a1564a2
feat(bt/bluedroid): Support to build HID Host and HID Device in single binary
2023-11-01 16:54:11 +08:00
Jin Cheng
b319143e3b
feat(bt/bluedroid): Added bt_discovery based host only example
2023-10-30 00:52:26 +00:00
Jin Cheng
fc174f5811
feat(bt/bluedroid): Added mode to use BlueDroid host only without Bluetooth Controller
2023-10-30 00:52:26 +00:00
Jin Cheng
d0e0928138
feat(bt/Bluedroid): Implemented esp_coex_status_set/clear using vendor HCI
2023-09-13 10:55:04 +08:00
Jin Cheng
3fb242660d
fix(bt/controller): Fixed error in sniff negotiation
...
fix(bt/controller): Avoided both local and peer unsniff being triggered
fix(bt/controller): Fixed the crash of mixing of master- and slave-initiated sniff requests
fix(bt/controller): Moved the TX of HW_ERR_EVT out of interrupt context to thread context
fix(bt/controller): Fixed the issue rx_irq is generated after error_irq for slave sniff mode frame
fix(bt/controller): Fixed asser error resulted from failure of role switch frame insert
fix(bt/controller): Ignored rx_irq in inquiry scan frame end
fix(bt/controller): Ignored rx_irq in page scan frame end
fix(bt/controller): Added status check before set/clear sniff coex status
fix(bt/controller): Fixed IntegerDevideByZero caused by interrupted r_ld_sco_start
2023-09-12 12:20:50 +00:00