cve-update-nvd2-native: Handle BB_NO_NETWORK and missing db

The custom do_fetch routine is ignoring BB_NO_NETWORK, add a check for this
as the correct behavior for the user is to set:
  CVE_DB_UPDATE_INTERVAL = "-1"

If CVE_DB_UPDATE_INTERNAL is set to -1, check that a DB file exists, if not
we need to error so the user can deal with this.

Note, MIRRORs are NOT handled by this code.

(From OE-Core rev: 062c125f41c3fc3fec0938b24f847ed566357c84)

Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 337c0806d2784d74bee8d6420fb8b4d48795d5fa)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
(cherry picked from commit 2bc4623a910dfa3a22cd054ea1e0f2dd59d74eea)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
This commit is contained in:
Mark Hatle
2024-11-12 15:23:11 -06:00
committed by Steve Sakoman
parent 7117d115ea
commit 85ceda54ce

View File

@@ -68,6 +68,8 @@ python do_fetch() {
update_interval = int(d.getVar("CVE_DB_UPDATE_INTERVAL"))
if update_interval < 0:
bb.note("CVE database update skipped")
if not os.path.exists(db_file):
bb.error("CVE database %s not present, database fetch/update skipped" % db_file)
return
if time.time() - os.path.getmtime(db_file) < update_interval:
bb.note("CVE database recently updated, skipping")
@@ -77,6 +79,9 @@ python do_fetch() {
except OSError:
pass
if bb.utils.to_boolean(d.getVar("BB_NO_NETWORK")):
bb.error("BB_NO_NETWORK attempted to disable fetch, this recipe uses CVE_DB_UPDATE_INTERVAL to control download, set to '-1' to disable fetch or update")
bb.utils.mkdirhier(db_dir)
bb.utils.mkdirhier(os.path.dirname(db_tmp_file))
if os.path.exists(db_file):