[Secure-testing-commits] r14059 - bin

Michael Gilbert gilbert-guest at alioth.debian.org
Sun Feb 7 22:10:57 UTC 2010


Author: gilbert-guest
Date: 2010-02-07 22:10:57 +0000 (Sun, 07 Feb 2010)
New Revision: 14059

Modified:
   bin/tracker_service.py
Log:
new pages for undetermined and unimportant issues

Modified: bin/tracker_service.py
===================================================================
--- bin/tracker_service.py	2010-02-07 22:10:53 UTC (rev 14058)
+++ bin/tracker_service.py	2010-02-07 22:10:57 UTC (rev 14059)
@@ -146,6 +146,8 @@
         self.register('status/dtsa-candidates',
                       self.page_status_dtsa_candidates)
         self.register('status/todo', self.page_status_todo)
+        self.register('status/undetermined', self.page_status_undetermined)
+        self.register('status/unimportant', self.page_status_unimportant)
         self.register('status/itp', self.page_status_itp)
         self.register('data/unknown-packages', self.page_data_unknown_packages)
         self.register('data/missing-epochs', self.page_data_missing_epochs)
@@ -204,6 +206,8 @@
              'Vulnerable packages in backports for oldstable'),
             ('status/dtsa-candidates', "Candidates for DTSAs"),
             ('status/todo', 'TODO items'),
+            ('status/undetermined', 'Packages that may be vulnerable but need to be checked (undetermined issues)'),
+            ('status/unimportant', 'Packages that have open unimportant issues'),
             ('status/itp', 'ITPs with potential security issues'),
             ('data/unknown-packages',
              'Packages names not found in the archive'),
@@ -913,10 +917,96 @@
                 yield self.make_xref(url, bug), description
         return self.create_page(
             url, "Bugs with TODO items",
-            [P(flags),
-             make_table(gen(),
-                        caption=("Bug", "Description"))])
+            [P(flags), make_table(gen(), caption=("Bug", "Description"))])
 
+    def page_status_undetermined(self, path, params, url):
+        def gen():
+            outrel = []
+            old_bug = ''
+            old_pkg = ''
+            old_dsc = ''
+            last_displayed = ''
+            releases = ('sid', 'squeeze', 'lenny', 'etch')
+            for (pkg_name, bug_name, release, desc) in self.db.cursor().execute(
+                    """SELECT DISTINCT sp.name, st.bug_name, sp.release,
+                    bugs.description
+                    FROM source_package_status AS st, source_packages AS sp, bugs
+                    WHERE st.vulnerable == 2 AND sp.rowid = st.package
+                    AND ( sp.release = ? OR sp.release = ? OR sp.release = ?
+                    OR sp.release = ? )
+                    AND sp.subrelease = '' AND st.bug_name == bugs.name
+                    ORDER BY sp.name, st.bug_name""", releases):
+
+                if old_bug == '':
+                    old_bug = bug_name
+                    old_pkg = pkg_name
+                    old_dsc = desc
+                elif old_bug != bug_name:
+                    if old_pkg == last_displayed:
+                        to_display = ''
+                    else:
+                        to_display = old_pkg
+                    yield to_display, self.make_xref(url, old_bug), old_dsc, ', '.join(outrel)
+                    last_displayed = old_pkg
+                    old_bug = bug_name
+                    old_pkg = pkg_name
+                    old_dsc = desc
+                    outrel = []
+                outrel.append( release )
+            yield old_pkg, self.make_xref(url, old_bug), old_dsc, ', '.join(outrel)
+
+        return self.create_page(url, 'Packages that may be vulnerable but need to be checked      (undetermined issues)',
+            [P("""This page lists packages that may or may not be affected
+            by known issues.  This means that some additional work needs to
+            be done to determined whether the package is actually
+            vulnerable or not.  This list is a good area for new
+            contributors to make quick and meaningful contributions."""),
+            make_table(gen(), caption=('Package', 'Bug', 'Description', 'Releases'))])
+
+    def page_status_unimportant(self, path, params, url):
+        def gen():
+            outrel = []
+            old_bug = ''
+            old_pkg = ''
+            old_dsc = ''
+            old_name = ''
+            last_displayed = ''
+            releases = ('sid', 'squeeze', 'lenny', 'etch')
+            for (pkg_name, bug_name, release, desc) in self.db.cursor().execute(
+                    """SELECT DISTINCT sp.name, st.bug_name, sp.release,
+                    bugs.description
+                    FROM source_package_status AS st, source_packages AS sp, bugs
+                    WHERE st.vulnerable > 0 AND sp.rowid = st.package
+                    AND ( sp.release = ? OR sp.release = ? OR sp.release = ?
+                    OR sp.release = ? ) AND st.urgency == 'unimportant'
+                    AND sp.subrelease = '' AND st.bug_name == bugs.name
+                    ORDER BY sp.name, st.bug_name""", releases):
+
+                if old_bug == '':
+                    old_bug = bug_name
+                    old_pkg = pkg_name
+                    old_dsc = desc
+                elif old_bug != bug_name:
+                    if old_pkg == last_displayed:
+                        to_display = ''
+                    else:
+                        to_display = old_pkg
+                    yield to_display, self.make_xref(url, old_bug), old_dsc, ', '.join(outrel)
+                    last_displayed = old_pkg
+                    old_bug = bug_name
+                    old_pkg = pkg_name
+                    old_dsc = desc
+                    outrel = []
+                outrel.append( release )
+            yield old_pkg, self.make_xref(url, old_bug), old_dsc, ', '.join(outrel)
+
+        return self.create_page(url, 'Packages that have open unimportant issues',
+            [P("""This page lists packages that are affected by issues
+            that are considered unimportant from a security perspective.
+            These issues are thought to be unexploitable or uneffective
+            in most situations (for example, browser denial-of-services)."""),
+            make_table(gen(), caption=('Package', 'Bug', 'Description', 'Releases'))])
+
     def page_status_itp(self, path, params, url):
         def gen():
             old_pkg = ''




More information about the Secure-testing-commits mailing list