From 8282507d17e74aa7a4d60d4818ee8528ae7b00c1 Mon Sep 17 00:00:00 2001 From: Arka-Saha Date: Wed, 10 Dec 2025 21:18:07 +0530 Subject: [PATCH] Cleans the version, as univers was rejecting the version with ':' --- vulnerabilities/importers/gentoo.py | 30 +++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/vulnerabilities/importers/gentoo.py b/vulnerabilities/importers/gentoo.py index 2f569cdf1..ebf44d5d3 100644 --- a/vulnerabilities/importers/gentoo.py +++ b/vulnerabilities/importers/gentoo.py @@ -103,15 +103,33 @@ def affected_and_safe_purls(affected_elem): purl = PackageURL(type="ebuild", name=pkg_name, namespace=pkg_ns) safe_versions, affected_versions = GentooImporter.get_safe_and_affected_versions(pkg) + # for version in safe_versions: + # constraints.append( + # VersionConstraint(version=GentooVersion(version), comparator="=").invert() + # ) + + # for version in affected_versions: + # constraints.append( + # VersionConstraint(version=GentooVersion(version), comparator="=") + # ) + + def clean_ver(v): + # removes ":something" which univers rejects + return v.split(":", 1)[0] + for version in safe_versions: - constraints.append( - VersionConstraint(version=GentooVersion(version), comparator="=").invert() - ) + try: + v_obj = GentooVersion(version) + except Exception: + v_obj = GentooVersion(clean_ver(version)) + constraints.append(VersionConstraint(version=v_obj, comparator="=").invert()) for version in affected_versions: - constraints.append( - VersionConstraint(version=GentooVersion(version), comparator="=") - ) + try: + v_obj = GentooVersion(version) + except Exception: + v_obj = GentooVersion(clean_ver(version)) + constraints.append(VersionConstraint(version=v_obj, comparator="=")) if not constraints: continue