Commit Graph

37383 Commits

Author SHA1 Message Date
Jack
431983a091 fix(esp_hw_support): use one universal MAC address for esp32h2/esp32h21/esp32h4
ESP32-H2/H21/H4 only provide a single universally administered MAC
address in eFuse (MAC_FACTORY), so switch their UNIVERSAL_MAC_ADDRESSES
Kconfig from "Two" to "One" to match the hardware allocation.

This is a functional no-op for MAC generation: the BT offset is only
applied when SOC_WIFI_SUPPORTED, and these chips have no Wi-Fi, so
Bluetooth already reuses the base MAC as-is; the IEEE 802.154 EUI-64 is
derived from the base MAC and MAC_EXT regardless. The only change is
the (otherwise unused) ESP_MAC_UNIVERSAL_MAC_ADDRESSES int value going
from 2 to 1.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-06 18:08:27 +08:00
Jack
f18f3814cc fix(esp32s31): default UNIVERSAL_MAC_ADDRESSES to Two
ESP32-S31 only provides two universally administered MAC addresses in
eFuse. The previous default of "Four" led to WiFi softap and Ethernet
consuming global MAC slots (base+1/+3) that do not exist on this chip
and could collide with the Bluetooth MAC.

Switch the default to "Two" so Softap and Ethernet fall back to locally
administered MACs derived from the WiFi station and Bluetooth MACs.

The "Four" option is retained for customers who override the base MAC
with a custom range in which four universally administered MAC
addresses are allocated per device; the help text now documents this
constraint.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-06 15:29:37 +08:00
Jiang Jiang Jian
309b3e82ec Merge branch 'fix/ble_mesh_disable_adv_pkt_discard_log' into 'master'
fix(ble_mesh): Disable warning logging when advertising packets are discarded

Closes BLERP-2945

See merge request espressif/esp-idf!50146
2026-07-06 15:13:06 +08:00
Jiang Jiang Jian
9126adadb9 Merge branch 'fix/ble_mesh_fixed_issues' into 'master'
Resolve NVIDIA-reported BLE mesh stack issues

Closes SEC-1116, SEC-1069, SEC-761, SEC-1068, SEC-1130, and SEC-1185

See merge request espressif/esp-idf!50176
2026-07-06 15:09:30 +08:00
Mahavir Jain
442cc028b5 Merge branch 'fix/fix_esp_http_client_cross_origin_credentials' into 'master'
fix(esp_http_client): strip Authorization header on cross-origin redirect

Closes SEC-228 and SEC-049

See merge request espressif/esp-idf!48820
2026-07-06 12:20:51 +05:30
Ashish Sharma
f7b8db2f2f feat(espcoredump): migrate to esp sha256 implementation from mbedtls sha256 2026-07-06 11:11:12 +05:30
Ashish Sharma
7d9f061cc1 fix(mbedtls): fixes TLS1.3 server failing with dynamic buffer 2026-07-06 10:38:10 +05:30
Aditya Patwardhan
2468defbff Merge branch 'feat/update_documentation_and_cleanup_for_s31' into 'master'
enable tests and cleanup JIRA references for s31

Closes IDF-14629 and IDF-14628

See merge request espressif/esp-idf!49273
2026-07-06 10:31:47 +05:30
Marius Vikhammer
61c798000f Merge branch 'feature/enable_more_linux_examples' into 'master'
feat(linux): enable more examples for linux target

See merge request espressif/esp-idf!50172
2026-07-06 11:40:51 +08:00
Song Ruo Jing
e4a269d793 Merge branch 'bugfix/dma2d_dequeue_mechanism' into 'master'
fix(dma2d): add a dequeue mechanism for dma2d driver

See merge request espressif/esp-idf!49925
2026-07-06 11:19:53 +08:00
morris
5c88f19a39 Merge branch 'bugfix/i2c_set_but_not_used_variable' into 'master'
fix(i2c): remove unused but set variables

Closes IDF-15788

See merge request espressif/esp-idf!50348
2026-07-06 11:08:56 +08:00
Jiang Jiang Jian
dc6ff3a91e Merge branch 'feat/update_pmu_pau_reg_description' into 'master'
feat(soc): update esp32c61 PMU & PAU reg header descriptions

See merge request espressif/esp-idf!50240
2026-07-06 10:35:29 +08:00
Wang Meng Yang
cbe15485ce Merge branch 'bugfix/fix_some_ctrl_bugs' into 'master'
fix(bt/controller): Fixed BR/EDR controller bugs found by regression tests on ESP32-S31

Closes BTQABR2023-776, BTQABR2023-786, BTQABR2023-800, BT-4378, BT-4381, and BT-4386

See merge request espressif/esp-idf!50251
2026-07-06 08:56:39 +08:00
Mahavir Jain
1e2b539c1c Merge branch 'bugfix/memory-safety-and-validation' into 'master'
fix(security): findings from project Vanessa

Closes SEC-1110, SEC-1115, SEC-1128, SEC-1144, SEC-763, SEC-1159, SEC-1058, SEC-609, SEC-1146, SEC-1163, SEC-1148, SEC-1176, SEC-1177, SEC-109, SEC-1156, SEC-1173, SEC-1174, SEC-1175, SEC-1117, SEC-1171, SEC-231, SEC-1182, SEC-1188, SEC-1157, SEC-328, and SEC-1131

See merge request espressif/esp-idf!50093
2026-07-03 23:26:21 +05:30
Erhan Kurubas
0586fb67c2 Merge branch 'coredump_test_fixes' into 'master'
Coredump fixes

Closes IDF-15881 and IDF-13849

See merge request espressif/esp-idf!48439
2026-07-03 16:38:00 +02:00
Jiang Jiang Jian
c7f22a4508 Merge branch 'fix/fix_sleep_cache_writeback_logic' into 'master'
fix(esp_hw_support): fix esp32s31 sleeping cache writeback logic

Closes PM-807

See merge request espressif/esp-idf!50346
2026-07-03 22:29:21 +08:00
Tomas Rezucha
a7a89f98c9 Merge branch 'docs/usb_wakeup_source' into 'master'
docs(sleep): Update light-sleep USB wake-up source

See merge request espressif/esp-idf!49990
2026-07-03 15:16:12 +02:00
Mahavir Jain
8d9fe4d5fe Merge branch 'fix/revert_redundant_rom_pmp_18769' into 'master'
revert(esp_hw_support): Re-add separate D-ROM PMP entry on C6/H2

Closes IDFGH-17871

See merge request espressif/esp-idf!50161
2026-07-03 17:53:58 +05:30
Wan Lei
b454f03dc8 Merge branch 'fix/twaifd_add_ci_fd_test' into 'master'
fix(driver_twai): add fd test on ci

Closes IDF-13479

See merge request espressif/esp-idf!50195
2026-07-03 19:38:33 +08:00
wuzhenghui
18dac21544 fix(esp_hw_support): fix esp32s31 sleeping cache writeback logic 2026-07-03 19:13:05 +08:00
Rahul Tank
5d40723bdf Merge branch 'bugfix/queue_att_cmd' into 'master'
feat(nimble): Defer all ATT commands until connection event is sent to GAP layer

See merge request espressif/esp-idf!47838
2026-07-03 16:01:07 +05:30
morris
d3b252d8ce fix(i2c): remove unused but set variables 2026-07-03 18:10:15 +08:00
nilesh.kale
9144db695a feat: enable tests and cleanup jira references for s31 2026-07-03 15:31:51 +05:30
Sudeep Mohanty
26b24ee2fa Merge branch 'task/buildv2_full_pipeline' into 'master'
Enable full buildv2 pipeline

Closes IDF-14180

See merge request espressif/esp-idf!49668
2026-07-03 11:28:57 +02:00
luoxu
9a3a767824 fix(ble_mesh): re-check scan dev-found cb before scan-rsp invocation 2026-07-03 17:21:14 +08:00
Ashish Sharma
7842b5170f fix(esp_tee): fix DS-lock leak, intr-matrix OOB, calloc overflow, attestation leak 2026-07-03 17:20:49 +08:00
Ashish Sharma
b065c38286 fix(esp-tls): reject NULL host/url in plain-TCP and async HTTP connect 2026-07-03 17:19:05 +08:00
Ashish Sharma
7462e3c30a fix(mbedtls): validate crypto input lengths (TEE OOB, auth-bypass, overflows) 2026-07-03 17:19:05 +08:00
Ashish Sharma
d64409fdb2 fix(esp_https_server): free TLS session on transport_ctx OOM in httpd_ssl_open 2026-07-03 17:19:05 +08:00
Ashish Sharma
440dd3b52a fix(esp_hal_security): clamp tag_len in aes_hal_gcm_read_tag to prevent OOB 2026-07-03 17:19:05 +08:00
Ashish Sharma
e09ab205f1 fix(bootloader_support): guard NULL efuse digest slot in secure-boot verify 2026-07-03 17:19:05 +08:00
Ashish Sharma
b939d86b8e fix(esp_http_client): fix digest-auth leaks and credential/handle use-after-free 2026-07-03 17:19:05 +08:00
Ashish Sharma
e838566c5f fix(esp_http_server): close UAF/double-free, buffer underflows, and OOB read 2026-07-03 17:19:05 +08:00
Ashish Sharma
b15caab876 fix(app_update): close OOB read, rollback-guard gap, and length underflow 2026-07-03 17:19:05 +08:00
luoxu
781d6b2314 fix(ble_mesh): comment out logs containing sensitive keys 2026-07-03 16:57:15 +08:00
liqigan
6b8073f901 fix(bt/controller): Fixed BR/EDR controller bugs found by regression tests on ESP32-S31
- Fixed the state machine issue caused by security related LMP procedures on ESP32-S31
- Fixed the issue of insufficient air time for ACK reception from the Central on ESP32-S31
- Fixed the page scan collision issue on ESP32-S31
- Fixed read failures for local supported features and extended features on ESP32-S31
- Fixed NULL access issue during SYNC disconnection on ESP32-S31
- Fixed ACL schedule issue during SYNC connection establishment on ESP32-S31
2026-07-03 16:36:10 +08:00
Chen Chen
81180373f9 Merge branch 'feat/i2s_tx_sync_esp31s31' into 'master'
feat(i2s): support TX FIFO sync on esp32s31

Closes IDF-15360

See merge request espressif/esp-idf!48824
2026-07-03 16:04:54 +08:00
luoxu
eb47e8ab18 fix(ble_mesh): Disable warning logging when advertising packets are discarded 2026-07-03 15:43:01 +08:00
Tomas Rezucha
2859a9b24a docs(sleep): Update light-sleep USB wake-up source 2026-07-03 15:04:33 +08:00
Rahul Tank
2453200f60 fix(nimble): Defer Events / ATT related information from stack
Defer Events/ ATT related GAP events from stack until connection
 event is sent to GAP layer
2026-07-03 11:13:09 +05:30
luoxu
912ec8dc62 fix(ble_mesh): validate PB-ADV start segment length 2026-07-03 12:14:21 +08:00
luoxu
2c4acaa2aa fix(ble_mesh): Reset reassembly buffer at start of each transaction
The reassembly buffer must be reset to its origin at the beginning of every
transaction. prov_msg_recv() pulls the PDU type byte (advancing buf->data by
one) and nothing restores it between transactions. Without this reset,
buf->data drifts forward by one byte per received PDU, causing the segment-0
memcpy to write past the end of the statically allocated rx buffer
(PROV_RX_BUF_SIZE), and the XACT_SEG_DATA() offsets used for continuation
segments to be skewed by the accumulated drift.
2026-07-03 12:14:21 +08:00
luoxu
43137475e1 fix(ble_mesh): fix DFD client message parsing and encoding bugs
Fix multiple wire-format and robustness issues in the DFD client
(dfd_cli.c):

- handle_capabilities: read oob_retrieval_supported as u8 instead of
  le32. The server encodes a single byte; le32 over-consumed 3 bytes
  of the URL scheme list and could over-read the buffer.
- handle_upload_status: extract upload_progress from bits 0-6 (& 0x7F)
  and upload_type from bit 7 (>> 7), matching the server encoding
  (progress | BIT(7)). The previous >>1 / &0x01 returned wrong values,
  mis-classified in-band vs OOB, and falsely rejected valid OOB
  messages with high progress.
- handle_dfd_status: correct the transfer-mode byte layout to
  trans_mode bits 0-1, update_policy bit 2, RFU bits 3-7 (previously
  read bits 6-7 / 5), and fix the RFU mask to 0xF8. Now matches the
  struct bitfield definition and the DFD server.
- handle_dfd_status: report status+phase and return early when
  buf->len == 0 (IDLE phase) instead of pulling 10 absent bytes.
- bt_mesh_dfd_cli_distribution_start: encode trans_mode/update_policy
  into bits 0-2 so the server decodes them correctly.
- handle_receiver_list: validate buf->len >= entries_cnt * 5 before
  the loop, and handle entries_cnt == 0 without relying on calloc(0).
- handle_receiver_status: pass the status value (not the whole union)
  to the %d log format, fixing undefined behavior.
- dfd_client_recv_status: drop the dead BLE_MESH_DFD_OP_CAPABILITIES_GET
  case (a client-send opcode) from the receive switch.
- bt_mesh_dfd_cli_receivers_add: widen msg_length to uint32_t to avoid
  uint16_t overflow that bypassed the PDU size guard; add a NULL check
  for the receivers array.
- bt_mesh_dfd_cli_distribution_upload_oob_start: return -EINVAL
  instead of -1 for consistency with the rest of the file.
2026-07-03 12:14:21 +08:00
luoxu
781218cb62 fix(ble_mesh): added max dfd srv count limit 2026-07-03 12:14:21 +08:00
luoxu
35cd10fbdf fix(ble_mesh): reject invalid chunk size 2026-07-03 12:14:21 +08:00
luoxu
52cfff707f fix(ble_mesh): fixed invalid disconnect handler wrote 2026-07-03 12:14:21 +08:00
luoxu
1b22467f63 fix(ble_mesh): fixed BLE-Mesh NimBLE extended-adv reassembly buffer overflow on COMPLETE fragment 2026-07-03 12:14:21 +08:00
luoxu
00adfb3cbc fix(ble_mesh): fixed BLE-Mesh GATTS read-callback error 2026-07-03 12:14:21 +08:00
Mahavir Jain
6df37e9bec Merge branch 'fix/fix_psk_hint_key_null_dereference' into 'master'
Fix/fix psk hint key null dereference

Closes IDF-15854 and TZ-2615

See merge request espressif/esp-idf!50179
2026-07-03 09:39:31 +05:30
Mahavir Jain
625ee1abb7 Merge branch 'fix/harden_esp_security' into 'master'
fix(esp_security): harden crypto peripheral error handling

Closes SEC-236, SEC-351, SEC-352, SEC-353, SEC-355, SEC-356, and SEC-357

See merge request espressif/esp-idf!49828
2026-07-03 09:11:33 +05:30