diff options
Diffstat (limited to 'meta/lib/oe/cve_check.py')
-rw-r--r-- | meta/lib/oe/cve_check.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/meta/lib/oe/cve_check.py b/meta/lib/oe/cve_check.py index 5ace3cf553..ae194f27cf 100644 --- a/meta/lib/oe/cve_check.py +++ b/meta/lib/oe/cve_check.py | |||
@@ -354,3 +354,25 @@ def has_cve_product_match(detailed_status, products): | |||
354 | 354 | ||
355 | #if no match, return False | 355 | #if no match, return False |
356 | return False | 356 | return False |
357 | |||
358 | def extend_cve_status(d): | ||
359 | # do this only once in case multiple classes use this | ||
360 | if d.getVar("CVE_STATUS_EXTENDED"): | ||
361 | return | ||
362 | d.setVar("CVE_STATUS_EXTENDED", "1") | ||
363 | |||
364 | # Fallback all CVEs from CVE_CHECK_IGNORE to CVE_STATUS | ||
365 | cve_check_ignore = d.getVar("CVE_CHECK_IGNORE") | ||
366 | if cve_check_ignore: | ||
367 | bb.warn("CVE_CHECK_IGNORE is deprecated in favor of CVE_STATUS") | ||
368 | for cve in (d.getVar("CVE_CHECK_IGNORE") or "").split(): | ||
369 | d.setVarFlag("CVE_STATUS", cve, "ignored") | ||
370 | |||
371 | # Process CVE_STATUS_GROUPS to set multiple statuses and optional detail or description at once | ||
372 | for cve_status_group in (d.getVar("CVE_STATUS_GROUPS") or "").split(): | ||
373 | cve_group = d.getVar(cve_status_group) | ||
374 | if cve_group is not None: | ||
375 | for cve in cve_group.split(): | ||
376 | d.setVarFlag("CVE_STATUS", cve, d.getVarFlag(cve_status_group, "status")) | ||
377 | else: | ||
378 | bb.warn("CVE_STATUS_GROUPS contains undefined variable %s" % cve_status_group) | ||