[Secure-testing-commits] r2084 - lib/python
Florian Weimer
fw at costa.debian.org
Thu Sep 22 10:52:10 UTC 2005
Author: fw
Date: 2005-09-22 10:52:10 +0000 (Thu, 22 Sep 2005)
New Revision: 2084
Modified:
lib/python/security_db.py
Log:
lib/python/security_db.py (DB.__init__):
Create user-defined functions at an earlier point, before the schema.
(DB.initSchema):
Add testing_status view.
Modified: lib/python/security_db.py
===================================================================
--- lib/python/security_db.py 2005-09-22 10:30:14 UTC (rev 2083)
+++ lib/python/security_db.py 2005-09-22 10:52:10 UTC (rev 2084)
@@ -94,6 +94,7 @@
self.verbose = verbose
self.schema_version = 11
+ self._initFunctions()
c = self.cursor()
for (v,) in c.execute("PRAGMA user_version"):
@@ -104,8 +105,6 @@
print "DB: schema version mismatch: expected %d, got %d" \
% (self.schema_version, v)
raise SchemaMismatch, `v`
-
- self._initFunctions()
return
assert False
@@ -261,7 +260,31 @@
cursor.execute(
"""CREATE INDEX binary_package_status_package
ON binary_package_status(package)""")
-
+
+ cursor.execute(
+ """CREATE VIEW testing_status AS
+ SELECT DISTINCT sp.name AS package, st.bug_name AS bug,
+ sp.archive AS section, st.urgency AS urgency,
+ (SELECT vulnerable
+ FROM source_packages AS sidp, source_package_status AS sidst
+ WHERE sidp.name = sp.name
+ AND sidp.release = 'sid' AND sidp.subrelease = ''
+ AND sidp.archive = sp.archive
+ AND sidst.bug_name = st.bug_name
+ AND sidst.package = sidp.rowid) AS unstable_vulnerable,
+ COALESCE((SELECT NOT vulnerable
+ FROM source_packages AS tsecp, source_package_status AS tsecst
+ WHERE tsecp.name = sp.name
+ AND tsecp.release = 'etch' AND tsecp.subrelease = 'security'
+ AND tsecp.archive = sp.archive
+ AND tsecst.bug_name = st.bug_name
+ AND tsecst.package = tsecp.rowid), 0) AS testing_security_fixed
+ FROM source_package_status AS st, source_packages AS sp
+ WHERE st.vulnerable AND st.urgency <> 'unimportant'
+ AND sp.rowid = st.package AND sp.release = 'etch'
+ AND sp.subrelease = ''
+ ORDER BY sp.name, urgency_to_number(st.urgency), st.bug_name""")
+
cursor.execute("PRAGMA user_version = %d" % self.schema_version)
def _initFunctions(self):
More information about the Secure-testing-commits
mailing list