[Secure-testing-commits] r2554 - bin lib/python

Florian Weimer fw at costa.debian.org
Mon Oct 24 14:43:05 UTC 2005


Author: fw
Date: 2005-10-24 14:43:04 +0000 (Mon, 24 Oct 2005)
New Revision: 2554

Modified:
   bin/tracker_service.py
   lib/python/security_db.py
Log:
Add a summary page for tracked bugs without a CVE name.

lib/python/security_db.py (DB.getFakeBugs):
  New method.

bin/tracker_service.py (TrackerService.page_data_fake_names):
  New method.
(TrackerService.__intit__, TrackerService.page_home):
  Use it.


Modified: bin/tracker_service.py
===================================================================
--- bin/tracker_service.py	2005-10-24 14:36:16 UTC (rev 2553)
+++ bin/tracker_service.py	2005-10-24 14:43:04 UTC (rev 2554)
@@ -97,6 +97,7 @@
         self.register('data/missing-epochs', self.page_data_missing_epochs)
         self.register('data/releases', self.page_data_releases)
         self.register('data/funny-versions', self.page_data_funny_versions)
+        self.register('data/fake-names', self.page_data_fake_names)
 
     def page_home(self, path, params, url):
         query = params.get('query', ('',))[0]
@@ -129,6 +130,7 @@
             ('status/itp', 'ITPs with potential security issues'),
             ('data/unknown-packages',
              'Packages names not found in the archive'),
+            ('data/fake-names', 'Tracked issues without a CVE name'),
             ('data/missing-epochs',
              'Package versions which might lack an epoch'),
             ('data/funny-versions',
@@ -832,8 +834,27 @@
              long as none of the binary packages carries the same name as the
              source package, most confusion is avoided or can be easily
              explained.""")])
-        
 
+    def page_data_fake_names(self, path, params, url):
+        def gen():
+            for (bug, description) in self.db.getFakeBugs():
+                yield self.make_xref(url, bug), description
+        return self.create_page(
+            url, "Automatically generated issue names",
+            [P("""Some issues have not been assigned CVE names, but are still
+tracked by this database.  In this case, the system automatically assigns
+a unique name.  These names are not stable and can change when the database
+is updated, so they should not be used in external references."""),
+             P('''The automatically generated names come in two flavors:
+the first kind starts with the string "''', CODE("FAKE-000000-"),
+               '''".  This means that no Debian bug has been assigned to this
+issue (or a bug has been created and is not recorded in this database).
+In the second kind of names, there is a Debian bug for the issue, and the "''',
+               CODE("000000"), '''"part of the name is replaced with the
+Debian bug number.'''),
+             make_table(gen(),
+                        caption=("Bug", "Description"))])
+
     def create_page(self, url, title, body, search_in_page=False, status=200):
         append = body.append
         append(HR())

Modified: lib/python/security_db.py
===================================================================
--- lib/python/security_db.py	2005-10-24 14:36:16 UTC (rev 2553)
+++ lib/python/security_db.py	2005-10-24 14:43:04 UTC (rev 2554)
@@ -1478,6 +1478,17 @@
         if old_package:
             yield (old_package, bugs)
 
+    def getFakeBugs(self, cursor=None):
+        """Returns a list of pairs (BUG-NAME, DESCRIPTION)."""
+
+        if cursor is None:
+            cursor = self.cursor()
+
+        return list(cursor.execute(
+            """SELECT name, description FROM bugs
+            WHERE name > 'FAKE-' AND name LIKE 'FAKE-%'
+            ORDER BY name"""))
+
     def getITPs(self, cursor):
         """Returns a generator for a list of unknown packages.
         Each entry has the form (PACKAGE, BUG-LIST, DEBIAN-BUG-LIST)."""




More information about the Secure-testing-commits mailing list