summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorHolger Levsen <holger@debian.org>2014-10-03 07:36:34 +0000
committerHolger Levsen <holger@debian.org>2014-10-03 07:36:34 +0000
commitd23649e92586edd0049104bc0aa714ca31095660 (patch)
treee6ca598dfac2619d0857615867a77457f492c423 /lib
parente30eba6e3943d64443a4be586055f58edba4619e (diff)
Include squeeze- and wheezy-backports in issue and package views. (Closes: #664866)
git-svn-id: svn+ssh://svn.debian.org/svn/secure-testing@29227 e39458fd-73e7-0310-bf30-c45bca0a0e42
Diffstat (limited to 'lib')
-rw-r--r--lib/python/security_db.py34
1 files changed, 24 insertions, 10 deletions
diff --git a/lib/python/security_db.py b/lib/python/security_db.py
index 33400a056e..5a4f857eb1 100644
--- a/lib/python/security_db.py
+++ b/lib/python/security_db.py
@@ -385,7 +385,7 @@ class DB:
AND NOT COALESCE((SELECT NOT vulnerable
FROM source_packages AS secp, source_package_status AS secst
WHERE secp.name = sp.name
- AND secp.release = '%s' AND ( secp.subrelease = 'security' OR secp.subrelease = 'lts' )
+ AND secp.release = '%s' AND ( secp.subrelease = 'security' OR secp.subrelease = 'lts' OR secp.subrelease = 'backports' )
AND secp.archive = sp.archive
AND secst.bug_name = st.bug_name
AND secst.package = secp.rowid), 0)
@@ -452,7 +452,7 @@ class DB:
return -1
self.db.createscalarfunction("release_to_number", release_to_number, 1)
- subreleases = ['', 'security', 'lts']
+ subreleases = ['', 'security', 'lts', 'backports']
def subrelease_to_number(u):
try:
return subreleases.index(u)
@@ -598,6 +598,12 @@ class DB:
if release == 'squeeze-lts':
release = 'squeeze'
subrelease = 'lts'
+ elif release == 'squeeze-backports':
+ release = 'squeeze'
+ subrelease = 'backports'
+ elif release == 'wheezy-backports':
+ release = 'wheezy'
+ subrelease = 'backports'
cursor.execute(
"""DELETE FROM source_packages
WHERE release = ? AND subrelease = ? AND archive = ?""",
@@ -661,6 +667,12 @@ class DB:
if release == 'squeeze-lts':
release = 'squeeze'
subrelease = 'lts'
+ elif release == 'squeeze-backports':
+ release = 'squeeze'
+ subrelease = 'backports'
+ elif release == 'wheezy-backports':
+ release = 'wheezy'
+ subrelease = 'backports'
(unch, parsed) = self._parseFile(cursor, filename)
unchanged = unchanged and unch
for name in parsed.keys():
@@ -1189,14 +1201,14 @@ class DB:
# note/release/subrelease triple, but we should check that
# here.
- status = {'' : {}, 'security' : {}, 'lts' : {}}
+ status = {'' : {}, 'security' : {}, 'lts' : {}, 'backports' : {}}
for (package, note, subrelease, vulnerable, urgency) in cursor.execute(
"""SELECT DISTINCT sp.name, n.id, sp.subrelease,
st.vulnerable, n.urgency
FROM source_package_status AS st,
source_packages AS sp, package_notes AS n
WHERE st.bug_name = ? AND sp.rowid = st.package
- AND sp.release = ? AND sp.subrelease IN ('', 'security', 'lts')
+ AND sp.release = ? AND sp.subrelease IN ('', 'security', 'lts', 'backports')
AND n.bug_name = st.bug_name AND n.package = sp.name
ORDER BY sp.name""",
(bug_name, nickname)):
@@ -1218,6 +1230,8 @@ class DB:
fixed_in_security = False
elif status['lts'].get((package, note), True):
fixed_in_security = False
+ elif status['backports'].get((package, note), True):
+ fixed_in_security = False
elif vulnerable == 2:
undet_pkgs[package] = True
@@ -1330,7 +1344,7 @@ class DB:
FROM source_packages AS p, source_package_status AS st
WHERE p.name = ?
AND p.release = ?
- AND p.subrelease IN ('', 'security', 'lts')
+ AND p.subrelease IN ('', 'security', 'lts', 'backports')
AND st.bug_name = ?
AND st.package = p.rowid
ORDER BY p.version COLLATE version DESC"""
@@ -1491,10 +1505,10 @@ class DB:
# covers binary-only NMUs.
for (v,) in c.execute("""SELECT version
FROM source_packages WHERE name = ?1
- AND release = ?2 AND subrelease IN ('', 'security', 'lts')
+ AND release = ?2 AND subrelease IN ('', 'security', 'lts', 'backports')
UNION ALL SELECT source_version
FROM binary_packages WHERE source = ?1
- AND release = ?2 AND subrelease IN ('', 'security', 'lts')""",
+ AND release = ?2 AND subrelease IN ('', 'security', 'lts', 'backports')""",
(package, release)):
if debian_support.Version(v) >= v_ref:
other_versions[v] = True
@@ -1565,7 +1579,7 @@ class DB:
store_value('release/1/' + release, '\n'.join(result))
- for release in ('sid', 'squeeze', 'wheezy', 'jessie'):
+ for release in ('sid', 'jessie', 'wheezy', 'squeeze'):
gen_release(release)
result = result_start
@@ -1713,14 +1727,14 @@ class DB:
AND COALESCE((SELECT st2.vulnerable FROM source_packages AS sp2,
source_package_status AS st2
WHERE sp2.name = sp.name AND sp2.release = sp.release
- AND ( sp2.subrelease = 'security' OR sp2.subrelease = 'lts' ) AND sp2.archive = sp.archive
+ AND ( sp2.subrelease = 'security' OR sp2.subrelease = 'lts' OR sp2.subrelease = 'backports' ) AND sp2.archive = sp.archive
AND st2.package = sp2.rowid AND st2.bug_name = st.bug_name
ORDER BY st2.vulnerable DESC), 1)) AS vulnerable,
st.urgency = 'unimportant' OR NOT vulnerable AS unimportant
FROM source_packages AS sp, source_package_status AS st, bugs
WHERE sp.name = ?
AND sp.release IN ('squeeze', 'wheezy', 'jessie', 'sid')
- AND sp.subrelease <> 'security' AND sp.subrelease <> 'lts'
+ AND sp.subrelease <> 'security' AND sp.subrelease <> 'lts' AND sp.subrelease <> 'backports'
AND st.package = sp.rowid
AND bugs.name = st.bug_name
AND (bugs.name LIKE 'CVE-%' OR bugs.name LIKE 'TEMP-%')

© 2014-2024 Faster IT GmbH | imprint | privacy policy