2b2a0e04b2
Running 'west blobs fetch' does not verify the digest of downloaded files: 1. if the checksum of the previously downloaded file does match that in the blob metadata (status BLOB_PRESENT), do nothing 2. if the checksum of the previously downloaded file does not match that in the blob metadata (status BLOB_OUTDATED), download the "up to date" file 3. if the blob has not yet been downloaded (status BLOB_NOT_PRESENT), download it None of the 2) and 3) code paths will verify that the checksum of the file just downloaded actually matches the digest in the blob's metadata. In the event that the metadata of a module is incorrect, then the user will not notice anything, and may rely on an unexpected binary, e.g. a static library for a different architecture. According to the Binary Blobs documentation [1], the expected behavior is to check the blob digest after downloading. [1] Fetching blobs, Zephyr 3.6.0 (still applies to Zephyr 3.7.0rc3) docs.zephyrproject.org/3.6.0/contribute/bin_blobs.html#fetching-blobs Signed-off-by: Christophe Dufaza <chris@openmarl.org> |
||
---|---|---|
.. | ||
completion | ||
fetchers | ||
runners | ||
tests | ||
zspdx | ||
README.txt | ||
bindesc.py | ||
blobs.py | ||
boards.py | ||
build.py | ||
build_helpers.py | ||
completion.py | ||
debug.py | ||
export.py | ||
flash.py | ||
mypy.ini | ||
robot.py | ||
run_common.py | ||
run_tests.py | ||
shields.py | ||
sign.py | ||
simulate.py | ||
spdx.py | ||
twister_cmd.py | ||
zcmake.py | ||
zephyr_ext_common.py |
README.txt
This directory contains implementations for west commands which are tightly coupled to the zephyr tree. This includes the build, flash, and debug commands. Before adding more here, consider whether you might want to put new extensions in upstream west. For example, any commands which operate on the multi-repo need to be in upstream west, not here. Try to limit what goes in here to Zephyr-specific features. When extending this code, please keep the unit tests (in tests/) up to date. The mypy static type checker is also run on the runners package. To run these tests locally on Windows, run: py -3 run_tests.py On macOS and Linux: ./run_tests.py Note that these tests are run as part of Zephyr's CI when submitting an upstream pull request, and pull requests which break the tests cannot be merged. Thanks!