Commit Graph
32 Commits
Author SHA1 Message Date
Chinmay Chhajed 5ddce053ea Merge branch 'bugfix/bt_enc_proc_finish' into 'master'
bt/bugfix: ACL Rx data is sent to host before enc change event

See merge request espressif/esp-idf!16346
2021-12-15 12:07:59 +00:00
Chinmay Chhajed 556cd73a7e bt/bugfix: ACL Rx data is sent to host before enc change event 2021-12-09 15:23:50 +08:00
Chinmay Chhajed da0234ca01 Merge branch 'bugfix/ble_conn_latency_max_value' into 'master'
BLE: Set connection max latency value to 499.

Closes BT-2025

See merge request espressif/esp-idf!15706
2021-10-29 12:16:55 +00:00
Chinmay Chhajed 7caa6ca45f BLE: Set connection max latency value to 499. 2021-10-29 14:24:45 +05:30
Chinmay Chhajed 0319dcd23d Merge branch 'bugfix/nimble_x_component_key_check' into 'master'
NimBLE: Compare only x component of public key before pairing.

Closes BT-1928

See merge request espressif/esp-idf!15035
2021-10-22 12:37:02 +00:00
Chinmay Chhajed 29d306e6ff NimBLE: Compare only x component of public key before pairing. 2021-09-23 18:30:01 +05:30
Chinmay Chhajed a977618f55 BT: Check only for same X component of public key in BR/EDR. 2021-09-20 23:24:24 +08:00
Chinmay Chhajed 5c8523eca0 Merge branch 'bugfix/remove_bt_get_mac' into 'master'
bt: Remove unused function esp_bt_get_mac.

See merge request espressif/esp-idf!14831
2021-08-17 13:09:36 +00:00
Chinmay Chhajed f167a2a3d1 bt: Remove unused function esp_bt_get_mac.
Closes https://github.com/espressif/esp-idf/issues/7410
2021-08-17 15:07:51 +05:30
Chinmay Chhajed b75e034b3c Bluedroid: Check only x component of passkey to avoid passkey impersonation attack. 2021-05-28 14:28:54 +05:30
Chinmay Chhajed ce4743d9d3 bt controller: Fixed handling for invalid feature page. 2021-05-11 09:00:37 +00:00
Chinmay Chhajed 3eaf78d462 advanced_https_ota: Added BLE GATTS code.
`advanced_https_ota` can run a minimal BLE GATT server while
downloading OTA update. Both NimBLE and Bluedroid stack can be used
here by configuring relevant options in menuconfig.

Signed-off-by: Chinmay Chhajed <chinmay.chhajed@espressif.com>
2021-04-20 15:34:53 +05:30
Chinmay Chhajed 1d54d9ac13 Fix for C2H flow control param check when only BLE mode is configured. 2021-03-10 15:06:49 +05:30
Chinmay Chhajed 3fa1f5d4d6 Renamed Kconfig to Kconfig.projbuild in some examples. 2021-03-02 16:00:59 +05:30
Chinmay Chhajed 368ba6b077 component/bt: Added check for NULL valued combination key. 2021-02-09 12:09:32 +05:30
Chinmay Chhajed fb3a382fe4 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-09 12:09:15 +05:30
Chinmay Chhajed 5596f37af1 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-09 12:09:15 +05:30
Chinmay Chhajed 62225cc47a NimBLE: BLE 5.0 related configuration changes
Added some changes like checking idf_target = BT_SOC_SUPPORT_5_0
and menuconfig option to enable/disable host based privacy.
2021-01-19 17:02:56 +05:30
Chinmay Chhajed e016b6b79b Bluedroid: Do not connect if peer BD_ADDR is same as own BD_ADDR. 2021-01-05 14:54:15 +05:30
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
Chinmay Chhajed ecfceaf7b9 NimBLE: example running BLE prph & ICMP echo reply simultaneously.
This commit adds an example in NimBLE where esp32 runs a peripheral as
well as a ping request to configured IP address. This example uses
nimble host stack.

Signed-off-by: Chinmay Chhajed <chinmay.chhajed@espressif.com>
2020-12-07 11:29:49 +05:30
Chinmay Chhajed 3c0f06adb2 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-05 12:14:47 +00:00
Chinmay Chhajed 6dbb993071 bluetooth: Added HCI example for combined scanning and advertising. 2020-07-28 05:32:14 +00:00
Chinmay Chhajed abb79e4fb5 Bluetooth HCI common components.
Separate Bluetooth HCI component example which adds some macros and
functions used by HCI Layer defined by the spec.
2020-07-28 05:32:14 +00:00
Chinmay Chhajed 4a0c137188 Bluedroid: Fixes cases having fallback to link up event.
Signed-off-by: Chinmay Chhajed <chinmay.chhajed@espressif.com>
2020-07-17 17:11:33 +05:30
Chinmay Chhajed 9bac16fcec Fixes ACL TX handler functioning.
ACL TX handler was never being called. Changed it's caller function so
that it is called properly.
2020-07-02 17:11:29 +05:30
Chinmay Chhajed e3350e7861 Bluedroid: Authentication fixes in Legacy and Secure Connection.
Prevent a remote device from doing a Bluetooth Impersonation Attack
(BIAS) by:

- Preventing remote device to downgrade secure connection
feature mask. Secure connection feature mask should remain same or
increase to enabled in link key generation and authentication.

- Doing a mutual authentication during Legacy Authentication.

Signed-off-by: Chinmay Chhajed <chinmay.chhajed@espressif.com>
2020-06-25 15:37:01 +05:30
Chinmay Chhajed 6d96217204 Future events scheduling error in case of wifi and bluetooth.
After this commit, global interrupts will be disabled before taking
current time for scheduling further bluetooth events. Earlier disabling
interrupts was taking some time because of which WiFi events were
interrupting in current bluetooth scheduling.

Signed-off-by: Chinmay Chhajed <chinmay.chhajed@espressif.com>
2020-02-12 20:04:21 +08:00
Chinmay Chhajed 6a91c8d440 Changes in menuconfig options to not compile any host when using hci
examples as no host is required there.
2019-11-22 11:14:50 +05:30
Chinmay Chhajed a104bc22ae README fixes 2019-11-22 11:11:37 +05:30
Chinmay Chhajed 85b66801b1 Moved HCI examples from bluetooth/bluedroid/hci to bluetooth/hci. 2019-11-22 11:11:37 +05:30
Chinmay Chhajed a6cc964a26 esp_http_server : Bugfix in parsing of empty header values
This MR is intended to fix incorrect parsing of HTTP requests when empty header values are present.

The issue is was due to asymmetric behavior of `http_parser` library, which in case of:

    non-empty header values : invokes callbacks with the pointer to the start of a value
    empty header values : invokes callbacks with pointer to the start of next header or section

Since HTTP server relies on this pointer (along with length of the value) to locate the end of a value, and replace the line terminators (CRLFs) with null characters, the second case needed to be handled correctly.

Closes IDFGH-1539

Closes https://github.com/espressif/esp-idf/issues/3803
2019-09-06 11:02:36 +08:00