summaryrefslogtreecommitdiffstats
path: root/meta/classes/cve-check.bbclass
diff options
context:
space:
mode:
authorRoss Burton <ross@burtonini.com>2022-02-23 12:54:31 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2022-02-25 12:39:00 +0000
commit8de517238f1f418d9af1ce312d99de04ce2e26fc (patch)
tree10fa40e2a0e46758936d026fe779f8b7cd1cd397 /meta/classes/cve-check.bbclass
parente5c06ddfd3c0db0d0762c0241c019f59ad310e53 (diff)
downloadopenembedded-core-contrib-8de517238f1f418d9af1ce312d99de04ce2e26fc.tar.gz
cve-check: get_cve_info should open the database read-only
All of the function in cve-check should open the database read-only, as the only writer is the fetch task in cve-update-db. However, get_cve_info() was failing to do this, which might be causing locking issues with sqlite. Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/cve-check.bbclass')
-rw-r--r--meta/classes/cve-check.bbclass3
1 files changed, 2 insertions, 1 deletions
diff --git a/meta/classes/cve-check.bbclass b/meta/classes/cve-check.bbclass
index 2d69aeba4b..d715fbf4d8 100644
--- a/meta/classes/cve-check.bbclass
+++ b/meta/classes/cve-check.bbclass
@@ -265,7 +265,8 @@ def get_cve_info(d, cves):
import sqlite3
cve_data = {}
- conn = sqlite3.connect(d.getVar("CVE_CHECK_DB_FILE"))
+ db_file = d.expand("file:${CVE_CHECK_DB_FILE}?mode=ro")
+ conn = sqlite3.connect(db_file, uri=True)
for cve in cves:
for row in conn.execute("SELECT * FROM NVD WHERE ID IS ?", (cve,)):