Skip to content

Commit 89b5571

Browse files
authored
gh-139330: Check expat version/checksum in SBOM with refresh.sh
Check expat version/checksum in SBOM with refresh.sh
1 parent bc7b511 commit 89b5571

File tree

3 files changed

+9
-6
lines changed

3 files changed

+9
-6
lines changed
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
SBOM generation tool didn't cross-check the version and checksum values
2+
against the ``Modules/expat/refresh.sh`` script, leading to the values
3+
becoming out-of-date during routine updates.

Misc/sbom.spdx.json

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Tools/build/generate_sbom.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -242,14 +242,14 @@ def check_sbom_packages(sbom_data: dict[str, typing.Any]) -> None:
242242
)
243243

244244
# libexpat specifies its expected rev in a refresh script.
245-
if package["name"] == "libexpat":
245+
if package["name"] == "expat":
246246
libexpat_refresh_sh = (CPYTHON_ROOT_DIR / "Modules/expat/refresh.sh").read_text()
247247
libexpat_expected_version_match = re.search(
248248
r"expected_libexpat_version=\"([0-9]+\.[0-9]+\.[0-9]+)\"",
249249
libexpat_refresh_sh
250250
)
251251
libexpat_expected_sha256_match = re.search(
252-
r"expected_libexpat_sha256=\"[a-f0-9]{40}\"",
252+
r"expected_libexpat_sha256=\"([a-f0-9]{64})\"",
253253
libexpat_refresh_sh
254254
)
255255
libexpat_expected_version = libexpat_expected_version_match and libexpat_expected_version_match.group(1)

0 commit comments

Comments
 (0)