mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
* [ptxdist] [PATCH 0/3] report: spdx_sbom: Assorted minor improvements
@ 2026-09-14 11:23 Alexander Dahl via ptxdist
  2026-09-14 11:23 ` [ptxdist] [PATCH 1/3] report: spdx_sbom: Fixed "created" field format Alexander Dahl via ptxdist
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Alexander Dahl via ptxdist @ 2026-09-14 11:23 UTC (permalink / raw)
  To: ptxdist; +Cc: Alexander Dahl, Ralf Glaser, Michael Olbrich

Hello everyone,

while reviewing CPE identifiers, and experimenting with SBOM files,
I came across some minor issues with the SPDX SBOM generator.
Not entirely sure if this can cause compatibility problems, maybe
depends on what people use that sbom for already.  So review carefully!

(Did not look into the other SBOM format (yet?).)

Greets
Alex

Alexander Dahl (3):
  report: spdx_sbom: Fixed "created" field format
  report: spdx_sbom: Fix externalPackageRef type in category SECURITY
  report: spdx_sbom: Convert pkg_name into valid idstring

 scripts/report/spdx_sbom.py | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)


base-commit: c19a3c3a7191849f857ca396792ae919197ae9c8
-- 
2.47.3




^ permalink raw reply	[flat|nested] 4+ messages in thread

* [ptxdist] [PATCH 1/3] report: spdx_sbom: Fixed "created" field format
  2026-09-14 11:23 [ptxdist] [PATCH 0/3] report: spdx_sbom: Assorted minor improvements Alexander Dahl via ptxdist
@ 2026-09-14 11:23 ` Alexander Dahl via ptxdist
  2026-09-14 11:23 ` [ptxdist] [PATCH 2/3] report: spdx_sbom: Fix externalPackageRef type in category SECURITY Alexander Dahl via ptxdist
  2026-09-14 11:23 ` [ptxdist] [PATCH 3/3] report: spdx_sbom: Convert pkg_name into valid idstring Alexander Dahl via ptxdist
  2 siblings, 0 replies; 4+ messages in thread
From: Alexander Dahl via ptxdist @ 2026-09-14 11:23 UTC (permalink / raw)
  To: ptxdist; +Cc: Alexander Dahl, Ralf Glaser, Michael Olbrich

SPDX tools like pyspdxtools or the online validator complain about the
timezone suffix.  While both are valid ISO-8601 strings, apparently 'Z'
is expected instead of '+00:00'.

    Error while parsing Document: ["time data '2026-09-09T12:20:03+00:00' does not match format '%Y-%m-%dT%H:%M:%SZ'"]

Link: https://tools.spdx.org/app/validate/
Link: https://spdx.github.io/spdx-spec/v2.3/document-creation-information/#69-created-field
Link: https://stackoverflow.com/a/63731605/462636
Signed-off-by: Alexander Dahl <ada@thorsis.com>
---
 scripts/report/spdx_sbom.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/report/spdx_sbom.py b/scripts/report/spdx_sbom.py
index b9132f43c..f39b37487 100644
--- a/scripts/report/spdx_sbom.py
+++ b/scripts/report/spdx_sbom.py
@@ -145,7 +145,7 @@ class SpdxSbomGenerator(SbomGenerator):
     def build(self, data):
         creationInfo = spdx.SPDXCreationInfo()
         creationInfo.created = (
-            datetime.now(timezone.utc).replace(microsecond=0).isoformat()
+            datetime.now(timezone.utc).replace(microsecond=0).isoformat().replace('+00:00', 'Z')
         )
         creationInfo.creators = [
             f"Organization: {data['bsp']['vendor']}",
-- 
2.47.3




^ permalink raw reply	[flat|nested] 4+ messages in thread

* [ptxdist] [PATCH 2/3] report: spdx_sbom: Fix externalPackageRef type in category SECURITY
  2026-09-14 11:23 [ptxdist] [PATCH 0/3] report: spdx_sbom: Assorted minor improvements Alexander Dahl via ptxdist
  2026-09-14 11:23 ` [ptxdist] [PATCH 1/3] report: spdx_sbom: Fixed "created" field format Alexander Dahl via ptxdist
@ 2026-09-14 11:23 ` Alexander Dahl via ptxdist
  2026-09-14 11:23 ` [ptxdist] [PATCH 3/3] report: spdx_sbom: Convert pkg_name into valid idstring Alexander Dahl via ptxdist
  2 siblings, 0 replies; 4+ messages in thread
From: Alexander Dahl via ptxdist @ 2026-09-14 11:23 UTC (permalink / raw)
  To: ptxdist; +Cc: Alexander Dahl, Ralf Glaser, Michael Olbrich

pyspdxtools -i image-root-tgz-spdx-sbom.json gives the following error:

    externalPackageRef type in category SECURITY must be one of ['cpe22Type', 'cpe23Type', 'advisory', 'fix', 'url', 'swid'], but is: http://spdx.org/rdf/references/cpe23Type

Could not find any location in spec which requires that URL in the
referenceType field.

Link: https://spdx.github.io/spdx-spec/v2.3/package-information/#721-external-reference-field
Link: https://spdx.github.io/spdx-spec/v2.3/external-repository-identifiers/#f2-security
Signed-off-by: Alexander Dahl <ada@thorsis.com>
---
 scripts/report/spdx_sbom.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/report/spdx_sbom.py b/scripts/report/spdx_sbom.py
index f39b37487..7c4f1c6bb 100644
--- a/scripts/report/spdx_sbom.py
+++ b/scripts/report/spdx_sbom.py
@@ -121,7 +121,7 @@ class SpdxSbomGenerator(SbomGenerator):
         for cpe_id in self.create_cpe_ids(pkg):
             cpe = spdx.SPDXExternalReference()
             cpe.referenceCategory = "SECURITY"
-            cpe.referenceType = "http://spdx.org/rdf/references/cpe23Type"
+            cpe.referenceType = "cpe23Type"
             cpe.referenceLocator = cpe_id
             spdx_pkg.externalRefs.append(cpe)
 
-- 
2.47.3




^ permalink raw reply	[flat|nested] 4+ messages in thread

* [ptxdist] [PATCH 3/3] report: spdx_sbom: Convert pkg_name into valid idstring
  2026-09-14 11:23 [ptxdist] [PATCH 0/3] report: spdx_sbom: Assorted minor improvements Alexander Dahl via ptxdist
  2026-09-14 11:23 ` [ptxdist] [PATCH 1/3] report: spdx_sbom: Fixed "created" field format Alexander Dahl via ptxdist
  2026-09-14 11:23 ` [ptxdist] [PATCH 2/3] report: spdx_sbom: Fix externalPackageRef type in category SECURITY Alexander Dahl via ptxdist
@ 2026-09-14 11:23 ` Alexander Dahl via ptxdist
  2 siblings, 0 replies; 4+ messages in thread
From: Alexander Dahl via ptxdist @ 2026-09-14 11:23 UTC (permalink / raw)
  To: ptxdist; +Cc: Alexander Dahl, Ralf Glaser, Michael Olbrich

For referenced elements the SPDX spec does not allow '_' in names, but
we have packages like for example 'lm_sensors'.

Link: https://spdx.github.io/spdx-spec/v2.3/package-information/#72-package-spdx-identifier-field
Signed-off-by: Alexander Dahl <ada@thorsis.com>
---
 scripts/report/spdx_sbom.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/report/spdx_sbom.py b/scripts/report/spdx_sbom.py
index 7c4f1c6bb..252828bc5 100644
--- a/scripts/report/spdx_sbom.py
+++ b/scripts/report/spdx_sbom.py
@@ -50,7 +50,7 @@ class SpdxSbomGenerator(SbomGenerator):
 
         spdx_pkg = spdx.SPDXPackage()
         spdx_pkg.name = pkg_name
-        spdx_pkg.SPDXID = "SPDXRef-" + pkg_name
+        spdx_pkg.SPDXID = "SPDXRef-" + pkg_name.replace('_', '-')
         if "version" in pkg:
             spdx_pkg.versionInfo = pkg["version"]
         if "url" in pkg:
-- 
2.47.3




^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-09-14 11:23 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-14 11:23 [ptxdist] [PATCH 0/3] report: spdx_sbom: Assorted minor improvements Alexander Dahl via ptxdist
2026-09-14 11:23 ` [ptxdist] [PATCH 1/3] report: spdx_sbom: Fixed "created" field format Alexander Dahl via ptxdist
2026-09-14 11:23 ` [ptxdist] [PATCH 2/3] report: spdx_sbom: Fix externalPackageRef type in category SECURITY Alexander Dahl via ptxdist
2026-09-14 11:23 ` [ptxdist] [PATCH 3/3] report: spdx_sbom: Convert pkg_name into valid idstring Alexander Dahl via ptxdist

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox