Commit Graph
43 Commits
Author SHA1 Message Date
Island fb195f7b50 Merge branch 'bugfix/fix_bluedroid_ext_adv_param_fail_state' into 'master'
fix(ble/bluedroid): preserve ext adv state when set params fails

Closes BLERP-2962 and IDFGH-17144

See merge request espressif/esp-idf!50470
2026-07-14 10:28:30 +08:00
Zhi Wei Jian 2e6cbccd55 Merge branch 'feat/support_bluedroid_dual_identify' into 'master'
feat(ble/bluedroid): Support bluedroid dual indentify

See merge request espressif/esp-idf!49640
2026-07-13 10:03:39 +08:00
zhiweijian 2358786647 feat(ble/bluedroid): Support bluedroid dual identity 2026-07-10 17:57:09 +08:00
zhiweijian 98efe02385 fix(ble/bluedroid): validate SMP pair-fail reason and OOB device 2026-07-10 10:56:25 +08:00
zhanghaipeng 72a49ed53b fix(ble/bluedroid): downgrade numeric comparison log to warning 2026-07-08 11:03:36 +08:00
Island 57b3b1777a Merge branch 'feat/ble-smp-multi-adv-static-random-address' into 'master'
feat(ble/bluedroid): Add BLE SMP support for multi-ADV with static random addresses

Closes BLERP-2698

See merge request espressif/esp-idf!49011
2026-06-16 15:24:26 +08:00
zhanghaipeng 7986e2faa8 feat(ble/bluedroid): Add BLE SMP support for multi-ADV with static random addresses 2026-06-15 14:41:51 +08:00
Wang Meng Yang 9a3bfb907c Merge branch 'bugfix/bbp_499' into 'master'
fix(bt/bluedroid): added validation for all SMP BR opcode lengths in smp_br_data_received

Closes BT-4389

See merge request espressif/esp-idf!49429
2026-06-11 12:36:20 +08:00
Jin Cheng 149743a8d5 fix(bt/bluedroid): fixed CTKD link key authentication downgrade in SC-Only mode 2026-06-10 08:43:42 +08:00
Jin Cheng d6a49aedef fix(bt/bluedroid): added validation for all SMP BR opcode lengths in smp_br_data_received 2026-06-09 17:11:08 +08:00
Jin Cheng af9ec3cd58 fix(bt/bluedroid): fixed the vulerabilities from AI code review in Bluedroid 2026-05-06 18:05:14 +08:00
zhanghaipeng 74a053bd4e fix(bt/bluedroid): fix BLE SMP pairing failure on BLE-only devices when using default param 2026-04-01 12:10:16 +08:00
zhiweijian 50747e4f63 fix(ble/bluedroid): Null/range checks, crypto cleanup and API consistency
- smp_api.h/smp_int.h: SMP_OPCODE_ARRAY_SIZE and SecureConnectionOobDataReply
  declaration alignment
- p_256_ecc_pp/p_256_multprecision: bounds and overflow fixes in ECC/multiprecision
- smp_act: init le_key; p_dev_rec null check in smp_key_distribution;
  smp_compute_dhkey failure notify in smp_both_have_public_keys
- smp_api: early state/cb_evt check in SMP_SecureConnectionOobDataReply
- smp_cmac: input/length validation in cmac_aes_k_calculate and
  aes_cipher_msg_auth_code
- smp_keys: smp_gen_p2_4_confirm return and smp_calculate_comfirm_cont;
  smp_process_private_key/smp_compute_dhkey cleanup and peer_pub_be clear
- smp_l2c: fix callback param types with L2CAP
- smp_main: event/state bounds in smp_sm_event; smp_get_event_name default string
- smp_utils: cmd_code<SMP_OPCODE_ARRAY_SIZE and smp_cmd_build_act check;
  smp_mask_enc_key/smp_command_has_invalid_parameters bounds
2026-03-18 16:49:09 +08:00
zhiweijian e118d053b3 fix(ble/bluedroid): fix L2CAP, SMP and HCI command issues
- Fix active_count check in l2cu_ble_plcb_active_count
- Restore previous state if connection command fails
- Fix HCI cmd buffer size off-by-one errors
- Fix connect handle length errors
- Fix channel sounding event status handling
- Fix SMP param_len check in smp_rand_back
- Fix spelling: BROCASTER to BROADCASTER in definitions
2026-02-27 17:59:59 +08:00
zhiweijian a625d4c5f9 feat(ble/bluedroid): Move the TinyCrypt and mbedTLS configuration items to the bt common path 2025-12-29 20:40:11 +08:00
zhiweijian c986469bbd feat(ble/bluedroid): Supported Bludroid host encryption using TinyCrypt 2025-12-25 19:15:06 +08:00
zhiweijian c8eaa737e5 feat(ble/bluedroid): Supported Bludroid host encryption using mbedtls 2025-12-25 19:14:54 +08:00
Jin Cheng 4a49312321 fix(bt/bluedroid): cleaned the code according to the tool cppcheck 2025-12-16 17:37:14 +08:00
Jin Cheng 1c0c9c6fbd fix(bt/bluedroid): fixed possible OOB read in smp_br_data_received 2025-12-16 17:37:14 +08:00
Jin Cheng 9a22611e30 fix(bt/blurdoird): check Classic key before cross-key derivation 2025-12-16 17:37:13 +08:00
zhanghaipeng b03ff3cf21 fix(ble/bluedroid): Add length check in prepare write response 2025-11-30 15:00:26 +08:00
zhiweijian cb8b4df798 feat(ble/bluedroid): Supported BLE bluedroid host pawr connection 2025-11-11 20:00:34 +08:00
chenjianhua 1aeb965607 feat(ble/bluedroid): Add more debug log for bluedroid 2025-11-10 16:59:16 +08:00
Island 33321e59b1 Merge branch 'opt/opt_ble_log' into 'master'
feat(ble/bluedroid): Added BLE debug LOG for bluedroid

Closes BLERP-2258

See merge request espressif/esp-idf!41567
2025-09-28 19:18:03 +08:00
zhanghaipeng 45775a3e35 feat(ble/bluedroid): Added BLE debug LOG for bluedroid 2025-09-26 20:10:32 +08:00
JinCheng 075ed218ca fix(bt/bluedroid): fixed potential OOB in Bluedroid 2025-09-25 10:20:10 +08:00
zhanghaipeng 99121258d4 fix(ble/bluedroid): Fixed BLE SMP state machine inconsistency on disconnection 2025-05-29 10:50:50 +08:00
zhanghaipeng 76e1650161 fix(ble/bluedroid): Fixed crash issue in BLE SMP when a disconnection process is ongoing 2024-10-20 11:47:31 +08:00
zhanghaipeng d528cc598e fix(bt/bluedroid): Fix BLE SMP register log level 2023-12-01 17:21:49 +08:00
zhanghaipeng faff6d3ee3 fix(bt): Fix bug while calculating block cipher using aes-128 2023-08-22 19:38:01 +08:00
Alexey Lapshin d4b7be4a73 bt: fix gcc-12 compile errors 2023-02-22 05:33:03 +00:00
chenjianhua 2048322429 bluedroid: support oob pairing for smp secure connection 2022-12-09 13:28:31 +08:00
xiewenxiang 50748009e4 components/bt: Fix bluedroid compile issue 2021-12-30 11:54:47 +08:00
“YangZhao” 12ec4866b8 Fix the high-impact issues from the code analysis report from customer.
For the CID10564,10384,10280,10098,10038,The memory was released in other place.
For the CID10365,it release the memory in the function when sent successfully.
For the CID10268,10011, we need not change the code.
2021-11-22 17:38:02 +08:00
Chinmay Chhajed b75e034b3c Bluedroid: Check only x component of passkey to avoid passkey impersonation attack. 2021-05-28 14:28:54 +05:30
zwj 077722696a add option to enable multi-connection 2021-04-20 02:41:14 +00:00
zwj 7c1c669799 component/bt: add BLE v5.0 feature for bluedroid host 2021-01-15 17:55:12 +08:00
Chinmay Chhajed d73ebb570b Bluedroid: Fixes for some vulnerabilities.
This commit fixes 'Impersonation in Passkey entry protocol'
(CVE-2020-26558) and suggests fixes for other vulnerabilites like
'Impersonation in the Pin Pairing Protocol' (CVE-2020-26555) and
'Authentication of the LE Legacy Pairing Protocol'

CVE-2020-26558 can be easily implemented if the peer device can
impersonate our public key. This commit adds a check by comparing our
and received public key and returns failed pairing if keys are same.

This commit also adds comments suggesting to use secure connection when
supported by all devices.
2020-12-24 10:52:12 +00:00
Angus Gratton 66fb5a29bb Whitespace: Automated whitespace fixes (large commit)
Apply the pre-commit hook whitespace fixes to all files in the repo.

(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
wangcheng 418b32e71b master missing BLE_AUTH_CMPL_EVT after restart 2020-05-13 20:33:24 +08:00
Geng Yu Chao 46c53ab8c8 btdm:fix the problem that Not getting complete Identity Address (Public Address) of the Privacy-enabled Bonded Device after bonding. beacuse of the wrong memcpy in LE_KEY callback handler. 2019-12-09 15:21:49 +08:00
Prasad Alatkar 2c3648b619 BT/Bluedroid : Add support to set min encryption key requirement
- Modifies `smp_utils.c` to add check on encryption key size received from
  peer.
- Modifies `esp_ble_gap_set_security_param` API to add minimum encryption key
  size requirement.
2019-09-25 11:56:47 +08:00
Hrishikesh Dhayagude 21165edf41 Bluetooth component refactoring 2019-06-30 16:39:00 +08:00