Skip to content

Commit ec69e35

Browse files
authored
fix: check return on re.search in canonical_convert (#1643)
addresses #1639 re.search returns `None` on failure, updating to indicate the version is `UNKNOWN` when this occurs and generating a log message
1 parent abffa0d commit ec69e35

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

cve_bin_tool/cve_scanner.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,13 @@ def canonical_convert(
272272
else:
273273
# Handle a.b.c<string> e.g. 1.20.9rel1
274274
pv = re.search(r"\d[.\d]*", product_info.version)
275-
parsed_version = parse_version(pv.group(0))
275+
if pv is None:
276+
parsed_version = "UNKNOWN"
277+
self.logger.warn(
278+
f"error parsing {product_info.vendor}.{product_info.product} v{product_info.version} - manual inspection required"
279+
)
280+
else:
281+
parsed_version = parse_version(pv.group(0))
276282
return parsed_version, version_between
277283

278284
def affected(self):

0 commit comments

Comments
 (0)