Commit Graph

273 Commits

Author SHA1 Message Date
xiewenxiang
8491705b63 component/bt: fix enable gattc nvs cache lead to crash 2021-06-07 17:34:47 +08:00
Chinmay Chhajed
c1e204634f Bluedroid: Check only x component of passkey to avoid passkey impersonation attack. 2021-05-31 05:10:59 +00:00
Jiang Jiang Jian
97ed80f415 Merge branch 'nimble/fix_ble_sm_sc_pub_key_v4.2' into 'release/v4.2'
NimBLE: Fix MITM vulnerability and free AES context (v4.2)

See merge request espressif/esp-idf!13597
2021-05-25 14:17:55 +00:00
Prasad Alatkar
0ca5134d5f NimBLE: Fix MITM vulnerability and free AES context (v4.2) 2021-05-25 09:21:12 +00:00
xiongweichao
8e7f7dfe59 Remove btc_hf_idx_by_bdaddr in both btc_hf_init and btc_hf_deinit functions 2021-05-25 07:06:22 +00:00
xiongweichao
b257ad7d9e fix ag use dynamic memory error 2021-05-25 07:06:22 +00:00
Prasad Alatkar
1c7340d229 NimBLE: Update submodule to fix host flow control bugs. 2021-05-18 18:10:19 +05:30
Prasad Alatkar
b3e1829f10 NimBLE: Fix host flow control in NimBLE porting layer.
- Register `ble_hs_flow_acl_free` callback in NimBLE porting layer.
2021-05-17 14:16:19 +05:30
Jiang Jiang Jian
9a2362b5c7 Merge branch 'nimble/add_error_prints_acl_buf_v4.2' into 'release/v4.2'
NimBLE: Add error prints for ACL buffer exhaustion in NPL (v4.2)

See merge request espressif/esp-idf!12969
2021-05-10 03:45:08 +00:00
zwj
34e8265821 update con state when getting connection cancle complete 2021-05-07 20:47:34 +08:00
zwj
3ebcb25fb1 fix multi-connection pair failed 2021-05-07 20:46:50 +08:00
Wang Meng Yang
7223c8db5b Merge branch 'bugfix/btdm_incorrectly_spelled_v4.2' into 'release/v4.2'
component/bt: fix Spelling mistakes (release v4.2)

See merge request espressif/esp-idf!12816
2021-05-07 08:10:02 +00:00
Marius Vikhammer
56e7cb0c70 docs: fix doxygen compile warnings for doxygen 1.9.1
Newer versions of doxygen will give warnings for comments in
INPUT lists

Delete all comment lines to fix these warnings, our folder structure
stil gives an OK overview of what we are including
2021-05-05 18:14:19 +08:00
Prasad Alatkar
2ec1b7434e NimBLE: Add error prints for ACL buffer exhaustion in NPL 2021-03-31 10:43:19 +05:30
XieWenxiang
bfa07bb9d8 component/bt: Modify some ambiguous descriptions (release v4.2) 2021-03-23 23:10:51 +08:00
Jiang Jiang Jian
f8307bcd4e Merge branch 'bugfix/spp_data_send_delay_v4.2' into 'release/v4.2'
Bugfix/spp data send delay v4.2

See merge request espressif/esp-idf!11772
2021-03-23 08:42:05 +00:00
Jiang Jiang Jian
59d3116e41 Merge branch 'bufix/ag_deep_copy_crash_v_4_2' into 'release/v4.2'
components/bt: Fix crash in btc_hf_arg_deep_copy when name or number is NULL

See merge request espressif/esp-idf!12789
2021-03-22 08:01:23 +00:00
Jiang Jiang Jian
0d5286471a Merge branch 'component_bt/optimize_spp_stop_server_v4.2' into 'release/v4.2'
component_bt/Optimize SPP Stop Server API[backport v4.2]

See merge request espressif/esp-idf!12620
2021-03-19 04:01:17 +00:00
xiongweichao
f6f644bf81 components/bt: Fix crash in btc_hf_arg_deep_copy when name or number is NULL 2021-03-18 20:20:19 +08:00
Jiang Jiang Jian
e027f962df Merge branch 'bugfix/bta_hf_client_sco_co_out_data_v4.2' into 'release/v4.2'
bugfix/if bta_hf_client_sco_co_out_data is called, it will crash when sco disconnected [backport v4.2]

See merge request espressif/esp-idf!12560
2021-03-18 04:04:17 +00:00
Jiang Jiang Jian
4f4cd08aad Merge branch 'bugfix/avrc_set_player_value_cmd_event_unhandle_v_4_2' into 'release/v4.2'
bugfix/fix unhandle RC vendor PDU when tg receive set_player_app_value cmd[backport v4.2]

See merge request espressif/esp-idf!12099
2021-03-18 04:03:49 +00:00
Jiang Jiang Jian
9f3750cee7 Merge branch 'bugfix/btdm_backport_ble_bugs_21_01_29_v4.2' into 'release/v4.2'
Bugfix/btdm backport ble bugs  for v4.2

See merge request espressif/esp-idf!12197
2021-03-18 03:55:04 +00:00
Jiang Jiang Jian
fa2c4fe622 Merge branch 'bugfix/fix_a2dp_underrun_issue_4_2' into 'release/v4.2'
Fix A2DP Underrun Issue [backport v4.2]

See merge request espressif/esp-idf!12277
2021-03-10 14:30:28 +00:00
Jiang Jiang Jian
e1f1d11b76 Merge branch 'feature/add_init_and_deinit_evt_for_a2dp_4_2' into 'release/v4.2'
feature/ Add A2DP Init and Deinit Complete Evt [backport v4.2]

See merge request espressif/esp-idf!12150
2021-03-05 12:19:18 +00:00
liqigan
60b6968e80 add API esp_spp_stop_srv_scn to stop a specific server 2021-03-04 15:33:47 +08:00
liaowenhao
8375bb94a4 bugfix/if bta_hf_client_sco_co_out_data is called, it will crash when sco disconnected 2021-03-01 11:34:15 +08:00
liaowenhao
bfb14130ac bugfix:unhandle event when tg receive set_player_app_value cmd 2021-02-24 07:47:08 +00:00
zwj
1b1c917321 add connection parameter check 2021-02-18 09:39:01 +00:00
zwj
171e2c5b1e fix ble connection maximum latency is 499 2021-02-18 09:39:01 +00:00
zwj
6d8a3f0d94 disable bluedroid congest error log print 2021-02-18 09:39:01 +00:00
zhiweijian
c759dade01 fix read multi char failed(GATT_27001) 2021-02-18 09:39:01 +00:00
zhiweijian
2e949ca9ac fix add white list failed 2021-02-18 09:39:01 +00:00
zwj
5d514fdb35 fix bluedroid repair faild if the two most significant bits of public address is '01' 2021-02-18 09:39:01 +00:00
zwj
d5951d3c9e - fix congest return value
- fix system no rsp when doing disconnect
- fix no congest event when ssc do writing performance
2021-02-18 09:39:01 +00:00
zwj
70589fc49d fix ble read multi char err when the number of handles is more than 10 2021-02-18 09:39:01 +00:00
zwj
66b1f37c8b fix scan rsp length err 2021-02-18 09:39:01 +00:00
zwj
c5afe0ea2d fix vendor hci memory leak 2021-02-18 09:39:01 +00:00
Chinmay Chhajed
24291f7a3b Bluedroid: Do not initiate/accept connection with device having same BDADDR.
Added BD_ADDR comparison in l2cu_lcp_allocate and removed check from
security connection request handler as it's handled in l2cu_lcp_allocate
for both connection request and create connection.
2021-02-18 06:12:17 +00:00
Chinmay Chhajed
359509ccdc bt: removed esp_bt_get_mac()
There was no need for this function as there is already a way present to
fetch own mac address. Own mac addr can be fetched by calling
controller_get_interface().
2021-02-18 06:12:17 +00:00
weitianhua
d254804a62 Fix A2DP Underrun Issue 2021-02-04 19:33:14 +08:00
weitianhua
186ebc61e7 Add init & deinit event for a2dp 2021-01-26 10:51:47 +08:00
Chinmay Chhajed
4cfece437d Bluedroid: Do not connect if peer BD_ADDR is same as own BD_ADDR. 2021-01-14 12:22:30 +05:30
Jiang Jiang Jian
70ecd0e92c Merge branch 'bugfix/btdm_blufi_send_custom_data_will_congested_after_connection_is_broken_v4.2' into 'release/v4.2'
component/bt: fix Blufi sends customer data will congested when connection is broken(backport v4.2)

See merge request espressif/esp-idf!11847
2021-01-06 12:29:44 +08:00
Jiang Jiang Jian
caddd5d9fa Merge branch 'bugfix/fix_spp_vfs_dynamic_memory_bugs_v4.2' into 'release/v4.2'
component_bt/fix spp vfs demo crash when use dynamic memory[backport v4.2]

See merge request espressif/esp-idf!11726
2021-01-06 12:20:22 +08:00
baohongde
f3c9a71138 components/bt: Add API to config QoS 2021-01-04 11:53:04 +08:00
XieWenxiang
5da8c3f8de component/bt: fix Blufi sends customer data will congested when connection is broken 2020-12-31 15:38:49 +08:00
Chinmay Chhajed
235628355f 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-25 16:01:11 +05:30
baohongde
567562a0fb components/bt: Add QOS for SPP, to decrease the delay from slave to master 2020-12-25 14:51:15 +08:00
liqigan
40873d2026 fix spp vfs demo crash when use dynamic memory 2020-12-23 15:06:34 +08:00
wangcheng
9ca6aee845 components/bt: Fixed the problem of early release of pointer(p_ccb) in funcion 2020-12-18 11:32:31 +08:00
Artem Godlevskyi
d315bf722f Added missing MYNEWT_VAL_BLE_L2CAP_COC_MPS definition
Signed-off-by: Prasad Alatkar <prasad.alatkar@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/5825
2020-12-17 07:21:02 +00:00
Prasad Alatkar
210bd3787d NimBLE: Fix misc coverity issues in NimBLE host
- NimBLE NVS : Additional check to account for NVS operation failure
- NimBLE host: Fix minor bug in ble_eddystone_set_adv_data_gen
- NimBLE host: remove recursive call, upstream PR: https://github.com/apache/mynewt-nimble/pull/857
2020-12-17 07:21:02 +00:00
Jiang Jiang Jian
f03d543139 Merge branch 'bugfix/blufi_config_potential_double_free_v4.2' into 'release/v4.2'
Bugfix/blufi config potential double free v4.2

See merge request espressif/esp-idf!11163
2020-12-09 22:26:19 +08:00
xiewenxiang
9dbf59af9c component/bt: support BLE Read Attribute value by UUID 2020-12-03 15:19:44 +08:00
xiewenxiang
4e8d383d01 component/bt: refactor ble random address setting 2020-12-03 15:19:35 +08:00
XieWenxiang
8533c452a1 component/bt: support BLE Application Layer Encryption key size check 2020-12-03 15:19:27 +08:00
XieWenxiang
82b65d5de0 component/bt: support BLE Authorization 2020-12-03 15:19:17 +08:00
xiewenxiang
0740090682 component/bt: fix incorrect encryption flag setting 2020-12-03 15:19:02 +08:00
wangcheng
1be101f342 component/bt: Add a macro to control the compilation of blufi. 2020-11-24 10:44:57 +08:00
wangcheng
7097ff286c component/bt: Fix a potential double free error. 2020-11-24 10:44:56 +08:00
wangcheng
65c5a57033 blufi: fix an error caused by incorrect conn_id parameters. 2020-11-24 10:44:54 +08:00
weitianhua
ad31451594 Fix crash caused by calling deinit directly 2020-11-10 11:18:39 +00:00
liqigan
640083c8cb replace list and ringbuffer with fixed queue
use eventgroup to sync spp_vfs_write

each connection has a switch_delay_timer not sharing a one

revert functions like spp_find_slot_by_xxx

fix vfs read bug when peer close
2020-11-06 03:38:52 +00:00
liqigan
94093debab move flow control to btc layer
defer free slot in btc layer when receive BTA_JV_RFCOMM_CLOSE_EVT
2020-11-06 03:38:52 +00:00
liqigan
76f41cc5e0 add event when calling spp API failed 2020-11-06 03:38:52 +00:00
liqigan
783c5ecee2 fix ag example outgoing callback not triggered
Closes https://github.com/espressif/esp-idf/issues/4967
2020-10-28 20:25:43 +08:00
Jiang Jiang Jian
e8cee449ea Merge branch 'bugfix/nimble_host_rcv_pkt_length_check_v4.2' into 'release/v4.2'
NimBLE: host_rcv_pkt event buf size check. (v4.2)

See merge request espressif/esp-idf!10758
2020-10-27 18:49:43 +08:00
liqigan
e4e46b8384 1. fix read rssi delta bug in bredr
2. modify read rssi related function names

Closes https://github.com/espressif/esp-idf/issues/5660
2020-10-27 06:57:20 +00:00
Chinmay Chhajed
d67e284c8d NimBLE: host_rcv_pkt event buf size check.
Check if the size of HCI event buffer is greater than the received HCI
packet. If not then abort with the error message.
2020-10-09 09:28:51 +05:30
Jiang Jiang Jian
17fca6235b Merge branch 'bugfix/add_clear_bond_complete_evt_4_2' into 'release/v4.2'
componenet_bt/bugfix: add remove bond device complete event 4.2

See merge request espressif/esp-idf!10651
2020-09-29 11:15:55 +08:00
baohongde
2d90885e09 components/bt: Replace task post with btc_inter_profile_call, when post message from btc_dm to btc_gap 2020-09-28 15:09:37 +08:00
baohongde
2b4fae912c components/bt: Fix clear bond fail when connected without ble included 2020-09-28 14:57:27 +08:00
xiongweichao
fba62f5e2e add remove bond device complete event 2020-09-28 14:56:42 +08:00
xiongweichao
7f8c121791 1.revert dummy command
2.fix send MEDIA_CTRL command in disconnect
2020-09-28 10:42:02 +08:00
xiongweichao
a6cdf4ed1e 1.fix test case dummy
2.fix sink send media control ESP_A2D_MEDIA_CHECK_SRC_RDY
2020-09-28 10:41:53 +08:00
weitianhua
84cda60478 Redesign separating AVRC & A2DP
1. Add g_av_with_rc to avrc_tg_init function
2. Remove g_av_open_fail
3. Add comment in API files
4. Add a2dp init & deinit state variable to inidcate a2dp statement
2020-09-18 14:09:27 +08:00
weitianhua
e940e1d72a Add global header and change declaration position 2020-09-18 14:09:19 +08:00
weitianhua
b16deb4473 Remove uneccessary macro
Separate AVRC from A2DP when AVRC not Initialized
2020-09-18 14:09:10 +08:00
weitianhua
306c978195 Rewrite a2dp clean_up function 2020-09-18 14:09:02 +08:00
weitianhua
59234501dd Add bda_addr for esp_bt_a2dp_disconn_req API
1. Add reaction for a2dp snk & src disconn req when no link up
  2. Change state machine set before EVT upto APP layer in some cases
  3. Add bool open_fail to choose whether post disconnection evt to app layer
2020-09-18 14:08:53 +08:00
Jiang Jiang Jian
dddcc2ede8 Merge branch 'bugfix/add_protection_for_spp_api_4.2' into 'release/v4.2'
Bugfix/add protection for spp api 4.2

See merge request espressif/esp-idf!10281
2020-09-16 14:06:28 +08:00
baohongde
ad8b3e4274 components/bt: Fix SPP using NULL point with dynamic memory 2020-09-07 15:44:28 +08:00
wangcheng
a7d52dafa6 component/bt: Fixed the watchdog timeout of btu task during multi-connection 2020-09-04 16:27:03 +08:00
weitianhua
a7ddc9c125 Add protection for rfcomm close API in SPP 2020-09-04 14:40:27 +08:00
weitianhua
07e2d3ab0f Add some debug log for bt:
1. Add logs for SPP not enabled successfully
2. Add information to Applicatioin layer that the A2DP is connecting to peer device

Regular BTC and BTU Task name & Add BTC Init protection

1. Regular the BTC Task Name to Close a Github issue

   Closes https://github.com/espressif/esp-idf/issues/4966

2. Add BTC Init failure protection

3. Regular BTU Task Name with BTC

4. Correct the comment of
   a. SDP_ServiceSearchRequest and SDP_ServiceSearchRequest2
   b. l2cu_create_conn_after_switch

5. Correct comment of esp_bt_hf_vra();

6. Fix cpp compilier region
2020-09-04 14:40:19 +08:00
wangcheng
12633717f7 components/bt: Fixed the state not synchronized between controller and host when disconnected. 2020-09-02 21:43:57 +08:00
Island
9cd0e2fd1a Merge branch 'bugfix/btdm_blufi_data_sequence_not_reset_after_disconnect_v4.2' into 'release/v4.2'
component/bt: fix Blufi sends data after disconnect the seq still increase(backport v4.2)

See merge request espressif/esp-idf!10241
2020-09-02 14:20:49 +08:00
XieWenxiang
82deea84eb component/bt: fix Blufi sends data after disconnect the seq still increase(backport v4.2) 2020-09-02 11:18:25 +08:00
Island
7d79d9f312 Merge branch 'bugfix/btdm_blufi_send_longer_custom_data_will_congested_v4.2' into 'release/v4.2'
component/bt: fix Blufi sends longer customer data  will will lead congested(backport v4.2)

See merge request espressif/esp-idf!9948
2020-08-28 13:55:46 +08:00
XieWenxiang
51ff44d96e component/bt: fix Blufi sends longer customer data will will lead congested(backport v4.2) 2020-08-28 10:20:19 +08:00
Jiang Jiang Jian
b498f0aebe Merge branch 'bugfix/buff_semaphore_not_free_v4.2' into 'release/v4.2'
component/bt: Fixed ble memory leak issue, buff_semaphore was not released.

See merge request espressif/esp-idf!9983
2020-08-24 17:30:54 +08:00
wangcheng
a557746cdd component/bt: Fixed ble memory leak issue, buff_semaphore was not released. 2020-08-14 17:16:23 +08:00
liqigan
6e94f6f9f4 add API esp_spp_stop_srv(), fix the error parameter in esp-idf/examples/bluetooth/bluedroid/classic_bt/bt_spp_initiator/main/example_spp_initiator_demo.c and fix collection of SPP
Closes https://github.com/espressif/esp-idf/issues/5409
Closes https://github.com/espressif/esp-idf/pull/5408

See merge request espressif/esp-idf!9114
2020-08-13 12:08:28 +08:00
weitianhua
8de78c2b3b Seperate BTA_JV_L2CAP for less bin size 2020-08-01 16:40:43 +08:00
Jiang Jiang Jian
e7179db204 Merge branch 'nimble/nrpa_support_v4.2' into 'release/v4.2'
NimBLE: Add Non-Resolvable private address support and misc bug fixes (Backport v4.2)

See merge request espressif/esp-idf!9741
2020-07-29 19:05:01 +08:00
Chinmay Chhajed
9cf4dd20e0 Bluedroid: Fixes cases having fallback to link up event.
Signed-off-by: Chinmay Chhajed <chinmay.chhajed@espressif.com>
2020-07-27 13:52:58 +05:30
Prasad Alatkar
a4e8e56288 NimBLE: Add Non-Resolvable private address support and misc bug fixes (Backport v4.2)
- Merges https://github.com/espressif/esp-nimble/pull/12
- Fixes repeated pairing failure in RPA feature

Closes https://github.com/espressif/esp-idf/issues/5530
2020-07-24 06:55:22 +00:00
Jiang Jiang Jian
0bcd26a610 Merge branch 'bugfix/fix_hci_max_page_num_v4.2' into 'release/v4.2'
bugfix/Support for more Bluetooth HID devices [backport v4.2]

See merge request espressif/esp-idf!9660
2020-07-21 12:10:59 +08:00
boblane
e14906f073 fix esp_bt_gap_get_bond_device_list bug
Closes https://github.com/espressif/esp-idf/issues/5395
2020-07-17 15:06:39 +08:00
DerfJagged
d1506fdae0 Support for more Bluetooth HID devices
Some Bluetooth devices - such as an Xbox One S controller (model 1708) - report more than two external features pages and are rejected immediately. Pages 1 and 2 are marked as unhandled in btm_devctl.c anyway, so there is no reason to block devices with more pages.
(IDFGH-3515)

Signed-off-by: liqigan <liqigan@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/5481
Closes https://github.com/espressif/esp-idf/issues/5470
2020-07-17 10:07:41 +08:00