Commit Graph

4454 Commits

Author SHA1 Message Date
Mahavir Jain
534e3ad1fa Merge branch 'bugfix/ota_anti_rollback_checks_2_v5.0' into 'release/v5.0'
feat(bootloader_support): Read secure_version under sha256 protection (v5.0)

See merge request espressif/esp-idf!29061
2024-02-22 17:13:17 +08:00
Aditya Patwardhan
bcca689866
change(version): Update version to 5.0.6 2024-02-20 10:03:13 +05:30
Mahavir Jain
f2743707b8 fix(ota): additional checks for secure version in anti-rollback case
Some additional checks related to secure version of the application in
anti-rollback case have been added to avoid any attempts to boot lower
security version but valid application (e.g., passive partition image).

- Read secure_version under sha256 protection

- First check has been added in the bootloader to ensure correct secure
  version after application verification and loading stage. This check
  happens before setting up the flash cache mapping and handling over
  the final control to application. This check ensures that application
  was not swapped (e.g., to lower security version but valid image) just
  before the load stage in bootloader.

- Second check has been added in the application startup code to ensure
  that currently booting app has higher security version than the one
  programmed in the eFuse for anti-rollback scenario. This will ensure
  that only the legit application boots-up on the device for
  anti-rollback case.
2024-02-15 15:14:51 +02:00
Jakub Kocka
cb6de0af4e fix(kconfcheck): Fixed false-positive indent errors and extended limits 2024-01-15 09:15:58 +01:00
Roland Dobai
abad298532 fix(gdbgui): Fix support of gdbgui on Unix with Python 3.11
Closes https://github.com/espressif/esp-idf/issues/12764
2024-01-05 18:52:37 +01:00
xueyunfei
e0cdfe3590 Fix(esp_wifi): Add the missing header file to the wifi header files 2024-01-03 10:38:31 +08:00
Roland Dobai
97acb47d2f Merge branch 'feat/manifest_check_v5.0' into 'release/v5.0'
feat: use esp-idf-sbom pre-commit plugin (v5.0)

See merge request espressif/esp-idf!27750
2023-12-20 00:10:38 +08:00
Frantisek Hrbata
b20cd8ccfa feat: use esp-idf-sbom pre-commit plugin
Currently sbom manifest is checked only in .gitmodules and
this check is done in pre-commit and also in CI. Meaning it's running
three times(pre-commit before push if user has it enabled, in CI
as there is the pre-commit run again and again with test in CI). Since
esp-idf-sbom contains a full manifest validation support and pre-commit
plugin for it, let's use it. This removes all the current sbom testing
and replaces it with a signle pre-commit plugin which validates all
manifests files(sbom.yml, idf_component.yml, .gitmodules and also
referenced manifests) in repository. Note that this checks all
manifests, not only ones which were modified. The check is reasonably
fast though, so it should not cause any problem. The reason for
validating all manifest files is that we want to make sure that the sbom
information in .gitmodules is updated too and that the hash
recorded in .gitmodules is up-to-date. Meaning submodule update
would not trigger this plugin, because no manifest was changed.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-12-19 12:55:35 +01:00
Roland Dobai
4c5ba485cc Merge branch 'tools/use_recommended_tool_priority' into 'release/v5.0'
fix (idf_tools): Opt for the recommended tool in tools.json rather than the supported one (v5.0)

See merge request espressif/esp-idf!27794
2023-12-19 19:37:00 +08:00
Roland Dobai
ed375f22e0 Merge branch 'contrib/github_pr_12683_v5.0' into 'release/v5.0'
fix(tools): fix path delimiter in gdbinit for Windows (v5.0)

See merge request espressif/esp-idf!27576
2023-12-19 19:35:30 +08:00
Roland Dobai
585c252527 Merge branch 'feature/docker_git_safe_dirs_v5.0' into 'release/v5.0'
feat(docker): allow to add dirs into git's safe.directory (v5.0)

See merge request espressif/esp-idf!27561
2023-12-19 19:34:36 +08:00
morris
6dc42296d7 Merge branch 'contrib/github_pr_12559_v5.0' into 'release/v5.0'
fix(spi): Correct REG_SPI_BASE(i) macro for all targets (GitHub PR) (v5.0)

See merge request espressif/esp-idf!27716
2023-12-19 16:50:14 +08:00
Martin Vychodil
ead2652c33 Merge branch 'fix/fatfsgen_construct_v5.0' into 'release/v5.0'
fix(tools): Fix fatfsgen construct dependency (v5.0)

See merge request espressif/esp-idf!27656
2023-12-18 21:20:23 +08:00
Anton Maklakov
93c25851c1 Merge branch 'feature/update-gdb-to-12.1_20231023_v5.0' into 'release/v5.0'
feat(tools): update gdb version to 12.1_20231023 (v5.0)

See merge request espressif/esp-idf!27378
2023-12-18 18:13:30 +08:00
Mahavir Jain
d198439225 Merge branch 'fix/aes_mpi_interrupt_allocation_workflow_v5.0' into 'release/v5.0'
fix(mbedtls): move interrupt allocation during initialization phase (v5.0)

See merge request espressif/esp-idf!27442
2023-12-15 17:49:12 +08:00
GuyBrush
40263563fd fix(tools): fix path delimiter in gdbinit for Windows
Merges https://github.com/espressif/esp-idf/pull/12683

Signed-off-by: Alexey Lapshin <alexey.lapshin@espressif.com>
2023-12-13 09:27:44 +00:00
Aditya Patwardhan
03d7a3807b change(version): Update version to 5.0.5 2023-12-13 13:49:52 +05:50
Aleksei Apaseev
d17433623d fix(idf_tools): Opt for the recommended tool in tools.json rather than the supported one (v5.0) 2023-12-12 14:19:39 +08:00
TD-er
a27b43a6db fix(spi): Correct REG_SPI_BASE(i) macro for all targets
The existing formula can never match these registers.

Closes https://github.com/espressif/esp-idf/pull/12559
Closes https://github.com/espressif/esp-idf/pull/12562
2023-12-06 16:27:06 +08:00
Roland Dobai
53bebcade5 fix(tools): Fix fatfsgen construct exception type and dependency
construct=2.10.70 fixed an issue
(c3866e9492)
and StringError is raised instead of UnicodeDecodeError.
2023-12-04 17:24:46 +01:00
harshal.patil
b72804340c
fix(mbedtls): move interrupt allocation during initialization phase 2023-12-01 16:49:47 +05:30
Frantisek Hrbata
13e4c1a9e7 feat(docker): allow to add paths into git's safe.directory
With 8959555cee7e[1] ("setup_git_directory(): add an owner check for the top..")
git added an ownership check of the git directory and refuses to
run any git commands, even parsing the config file, if the git directory
is not owned by the current user. The "fatal: detected dubious ownership in repository"
is reported.

This fixes CVE-2022-24765[2], which allows to compromise user account. On a
multi-user system or e.g. on a shared file system, one user may create a "rogue"
git repository with e.g. core.fsmonitor set to an arbitrary command. Other user
may unwillingly execute this command by running e.g. git-diff or
git-status within the "rogue" git repository, which may be in one of the parent
directories. If e.g. PS1 is set to display information about a git
repository in CWD, as suggested in Git in Bash[3], the user do not need to run
any git command to trigger this, just entering some subdirectory under
this "rogue" git repository is enough, because the git command will be
started transparently through the script used in PS1. The core.fsmonitor
can be set to arbitrary command. It's purpose is to help git to identify changed files
and speed up the scanning for changed files.

rogue
├── .git     # owned by user1
└── dir1     # owned by user2
    ├── dir2 # owned by user2
    └── .git # owned by user2

user1 sets core.fsmonitor for git repository in rogue directory
$ git config --add core.fsmonitor "bash -c 'rm -rf \$HOME'"

user2 enters dir1 and runs e.g. git diff and triggers the core.fsmonitor command.

The ownership check may cause problems when running git commands in
ESP-IDF Docker container. For example user may run the container as
root, but the mounted project may be owned by a particular user.

In this case git will refuse to execute any git command within the
"/project" directory, because it's not owned by root. To overcome this,
git allows to set safe.directories, for which the ownership check is
skipped. The security check may be completely disabled by setting
safe.directories to "*". This solution was proposed in PR 12636[4], but
it would allow make it possible to exploit this vulnerability again.

This fix allows user to specify git's safe.directory in IDF_GIT_SAFE_DIR
environmental variable, which may be set during container startup.

The IDF_GIT_SAFE_DIR has same format as PATH and multiple directories can be
specified by using a ":" separator. To entirely disable this git security check
within the container, user may set IDF_GIT_SAFE_DIR='*'. This might be
heplfull in CI.

Closes https://github.com/espressif/esp-idf/pull/12636

[1] - 8959555cee
[2] - https://nvd.nist.gov/vuln/detail/cve-2022-24765
[3] - https://git-scm.com/book/en/v2/Appendix-A%3A-Git-in-Other-Environments-Git-in-Bash
[4] - https://github.com/espressif/esp-idf/pull/12636

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-12-01 08:31:06 +01:00
Alexey Lapshin
f7a6ca13e9 feat(tools): update gdb version to 12.1_20231023 2023-11-24 11:17:52 +04:00
Jiang Jiang Jian
15825570a3 Merge branch 'contrib/github_pr_12052_v5.0' into 'release/v5.0'
Two small patches for build system and fatfs (GitHub PR) (v5.0)

See merge request espressif/esp-idf!26432
2023-11-23 19:27:38 +08:00
Jiang Jiang Jian
ae02cc7b7c Merge branch 'feat/dynamic_integration_pipeline_v5.0' into 'release/v5.0'
CI: dynamic integration pipeline v5.0

See merge request espressif/esp-idf!26947
2023-11-23 15:17:12 +08:00
Jiang Jiang Jian
85651c507f Merge branch 'contrib/github_pr_12558_v5.0' into 'release/v5.0'
Fix: esptool_py incorrectly assumed target name equals binary name (GitHub PR) (v5.0)

See merge request espressif/esp-idf!27272
2023-11-23 15:13:59 +08:00
Jiang Jiang Jian
a8caeb9af4 Merge branch 'bugfix/fix_lightsleep_current_leakage_on_usj_pad_v5.0' into 'release/v5.0'
fix(esp_hw_support): fix lightsleep current leakage on usb pad (backport v5.0)

See merge request espressif/esp-idf!27208
2023-11-23 14:46:38 +08:00
wuzhenghui
ead822e6ee
fix(esp_hw_support): fix lightsleep current leakage on usb-phy controlled pad 2023-11-23 10:21:02 +08:00
Frantisek Hrbata
d587d24c43 feat(ci): add test for custom cmake CMAKE_EXECUTABLE_SUFFIX
Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-11-22 14:44:18 +00:00
Chen Yudong
29a2249170 ci: dynamic integration test child pipeline 2023-11-15 05:49:32 +00:00
Roland Dobai
1e69dbf6cf ci(fix): Improve the stability of the autocomplete tests 2023-11-09 14:10:13 +01:00
Michael (XIAO Xufeng)
1db67a7133 Merge branch 'bugfix/spi_master_fifo_use_dma_v5.0' into 'release/v5.0'
fix(spi): fixed undesired touching to DMA (v5.0)

See merge request espressif/esp-idf!26771
2023-11-02 21:11:10 +08:00
Jiang Jiang Jian
03732b50fd Merge branch 'feature/pbkdf2_fast_implementation_v5.0' into 'release/v5.0'
change(esp_wifi): Copy fastpbkdf2 implementation

See merge request espressif/esp-idf!26852
2023-11-02 15:12:20 +08:00
Xiao Xufeng
93e973fa21 fix(spi): fixed undesired touching to DMA
Closes https://github.com/espressif/esp-idf/issues/12241
2023-11-02 12:32:40 +08:00
Michal Jenikovsky
5dafc957ef idf.py: gdb action incorrectly generated EOL gdbinit scripts
GDB on Windows incorrectly reads EOL in the script files causing 'gdb'
action to fail.

(gdb) source .../build/gdbinit/py_extensions
(gdb) source .../build\gdbinit\symbols
add symbol table from file "...\build\bootloader\bootloader.elf"
.../build\gdbinit\symbols:6: Error in sourced command file:
Undefined command: "".  Try "help".

Forcing line separator to '\n' resolved the issue

Signed-off-by: Michal Jenikovsky <jendo@jmsystems.sk>
2023-11-02 02:19:09 +00:00
Kapil Gupta
973aca32be change(esp_wifi): Port fast_pbkdf2 implementation for mbedlts
Add changes to use fast_pbkdf2 as default for PMK calculations.
fast_pbkdf2 is significantly faster than current implementations
for esp chips.

Also removes unnecessary code for pbkdf-sha256 and pbkdf-sha512.
2023-11-01 21:56:56 +05:30
Kapil Gupta
5d26770886 change(esp_wifi): Copy fastpbkdf2 implementation
Copy pbkdf2 implementation from https://github.com/ctz/fastpbkdf2(3c56895)
2023-11-01 21:56:48 +05:30
Sarvesh Bodakhe
c90353291c fix(esp_wifi): Fix issue of station disconnecting immediately when AP RSSI is zero 2023-10-31 20:38:17 +08:00
Jiang Guang Ming
7789d30686 feat(mbedtls): add new config CONFIG_MBEDTLS_USE_CRYPTO_ROM_IMPL for mbedtls unit-test 2023-10-26 21:00:27 +08:00
Alexey Gerenkov
e943bbda36 feat(tools): Update OpenOCD version to v0.12.0-esp32-20230921 2023-10-18 10:51:45 +02:00
Erhan Kurubas
9fc58a706d fix(interrupts): reorder esp32s3 irq names to align with the respective irq numbers 2023-10-17 09:02:31 +02:00
Roland Dobai
b9a15e601b Merge branch 'feat/monitor_port_detection' into 'release/v5.0'
feat(tools/monitor): add simple port detection [backport v5.0]

See merge request espressif/esp-idf!26329
2023-10-10 20:31:19 +08:00
Jiang Jiang Jian
1b5a9a9420 Merge branch 'bugfix/check_mapping_target_conflict_v5.0' into 'release/v5.0'
fix(ldgen): check target conflict for entries with section aliases (v5.0)

See merge request espressif/esp-idf!26124
2023-10-07 14:38:01 +08:00
Jiang Jiang Jian
1f870c8102 Merge branch 'feature/rename_wpa2_ent_to_eap_client_v5.0' into 'release/v5.0'
WiFi: Rename WPA2 enterprise APIs to EAP Client. (v5.0)

See merge request espressif/esp-idf!26098
2023-10-07 14:33:17 +08:00
Jiang Jiang Jian
ffae14ac1d Merge branch 'bugfix/suppress_compiler_warning_silent_reboot_is_enabled_v5.0' into 'release/v5.0'
fix(esp_system): suppress compiler warning if ESP_SYSTEM_PANIC_SILENT_REBOOT is enabled (backport v5.0)

See merge request espressif/esp-idf!26037
2023-10-07 14:28:52 +08:00
Peter Dragun
570f5880be feat(tools/monitor): add simple port detection
Closes https://github.com/espressif/esp-idf/issues/8114
2023-10-05 16:29:43 +02:00
Fu Hanxi
5e2c3e23ae
ci: fix breaking change in idf-build-apps 1.0.0
x
2023-09-29 14:16:14 +02:00
wuzhenghui
49bd0ca8fd fix(esp_system): suppress compiler warning if ESP_SYSTEM_PANIC_SILENT_REBOOT is enabled 2023-09-28 02:53:07 +00:00
You Wei
39cc5e0fcc fix(ldgen): duplicate entries in the generated .ld file 2023-09-21 19:41:24 +08:00
You Wei
82f26d48a3 fix(ldgen): check target conflict for entries with section alias 2023-09-21 19:41:24 +08:00