/[secure-testing]/bin/tracker_service.py
ViewVC logotype

Diff of /bin/tracker_service.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 12999 by fw, Mon Oct 12 17:41:52 2009 UTC revision 13784 by geissert, Mon Jan 11 07:49:35 2010 UTC
# Line 83  td, th { text-align : left; Line 83  td, th { text-align : left;
83           padding-right : 0.25em; }           padding-right : 0.25em; }
84  td { vertical-align: baseline }  td { vertical-align: baseline }
85  span.red { color: red; }  span.red { color: red; }
86    span.purple { color: purple; }
87  span.dangerous { color: rgb(191,127,0); }  span.dangerous { color: rgb(191,127,0); }
88  """), SCRIPT('''var old_query_value = "";  """), SCRIPT('''var old_query_value = "";
89    
# Line 149  function onSearch(query) { Line 150  function onSearch(query) {
150              [P(              [P(
151              """The data in this tracker comes solely from the bug database maintained              """The data in this tracker comes solely from the bug database maintained
152  by Debian's security team located in the testing-security Subversion """,  by Debian's security team located in the testing-security Subversion """,
153              A("http://svn.debian.org/wsvn/secure-testing/data", "repository"),              A("http://svn.debian.org/wsvn/secure-testing/data/", "repository"),
154              """.  The data represented here is derived from: """,              """.  The data represented here is derived from: """,
155              A("http://www.debian.org/security/#DSAS", "DSAs"),              A("http://www.debian.org/security/#DSAS", "DSAs"),
156              """ issued by the Security Team; issues tracked in the """,              """ issued by the Security Team; issues tracked in the """,
# Line 283  data source.""")], Line 284  data source.""")],
284              source = bug.name.split('-')[0]              source = bug.name.split('-')[0]
285              if source == 'CVE':              if source == 'CVE':
286                  source_xref = compose(self.make_cve_ref(url, bug.name, 'CVE'),                  source_xref = compose(self.make_cve_ref(url, bug.name, 'CVE'),
287                                        " (",                                        " (at ",
288                                        self.make_nvd_ref(url, bug.name,                                        self.make_nvd_ref(url, bug.name,
289                                                          'in NVD'),                                                          'NVD'),
290                                          "; ",
291                                          self.make_rhbug_ref(url, bug.name,
292                                                            'RH'),
293                                        ")")                                        ")")
294              elif source == 'DSA':              elif source == 'DSA':
295                  source_xref = self.make_dsa_ref(url, bug.name, 'Debian')                  source_xref = self.make_dsa_ref(url, bug.name, 'Debian')
# Line 327  data source.""")], Line 331  data source.""")],
331    
332              if not bug.not_for_us:              if not bug.not_for_us:
333                  for (release, status, reason) in bug.getStatus(cursor):                  for (release, status, reason) in bug.getStatus(cursor):
334                      if status <> 'fixed':                      if status == 'undetermined':
335                            reason = self.make_purple(reason)
336                        elif status <> 'fixed':
337                          reason = self.make_red(reason)                          reason = self.make_red(reason)
338                      yield B('Debian/%s' % release), reason                      yield B('Debian/%s' % release), reason
339    
# Line 347  data source.""")], Line 353  data source.""")],
353                          package = compose(                          package = compose(
354                              self.make_source_package_ref(url, package),                              self.make_source_package_ref(url, package),
355                              " (", self.make_pts_ref(url, package, 'PTS'), ")")                              " (", self.make_pts_ref(url, package, 'PTS'), ")")
356                      if vulnerable:                      if vulnerable == 1:
357                          vuln = self.make_red('vulnerable')                          vuln = self.make_red('vulnerable')
358                          version = self.make_red(version)                          version = self.make_red(version)
359                        elif vulnerable == 2:
360                            vuln = self.make_purple('undetermined')
361                            version = self.make_purple(version)
362                      else:                      else:
363                          vuln = 'fixed'                          vuln = 'fixed'
364    
# Line 370  data source.""")], Line 379  data source.""")],
379                          old_pkg = pkg                          old_pkg = pkg
380                          packages = self.make_binary_packages_ref(url, packages)                          packages = self.make_binary_packages_ref(url, packages)
381    
382                      if vulnerable:                      if vulnerable == 1:
383                          vuln = self.make_red('vulnerable')                          vuln = self.make_red('vulnerable')
384                          version = self.make_red(version)                          version = self.make_red(version)
385                        elif vulnerable == 2:
386                            vuln = self.make_purple('undetermined')
387                            version = self.make_purple(version)
388                      else:                      else:
389                          vuln = 'fixed'                          vuln = 'fixed'
390                      yield (packages,                      yield (packages,
# Line 435  data source.""")], Line 447  data source.""")],
447              def gen_comments():              def gen_comments():
448                  for (t, c) in bug.comments:                  for (t, c) in bug.comments:
449                      yield c                      yield c
450              page.append(make_pre(gen_comments()))              page.append(make_pre(linkify(gen_comments())))
451    
452          return self.create_page(url, bug.name, page)          return self.create_page(url, bug.name, page)
453    
# Line 644  this package, but still reference it.""" Line 656  this package, but still reference it."""
656                          urgency = ''                          urgency = ''
657                  elif urgency == 'high':                  elif urgency == 'high':
658                      urgency = self.make_red(urgency)                      urgency = self.make_red(urgency)
659                    elif urgency == 'undetermined':
660                        urgency = self.make_purple(urgency)
661                  else:                  else:
662                      if no_dsa:                      if no_dsa:
663                          urgency = urgency + '*'                          urgency = urgency + '*'
# Line 760  for this vulnerability.)''')]) Line 774  for this vulnerability.)''')])
774                      urgency = ''                      urgency = ''
775                  elif urgency == 'high':                  elif urgency == 'high':
776                      urgency = self.make_red(urgency)                      urgency = self.make_red(urgency)
777                    elif urgency == 'undetermined':
778                        urgency = self.make_purple(urgency)
779    
780                  yield pkg_name, self.make_xref(url, bug_name), urgency, remote                  yield pkg_name, self.make_xref(url, bug_name), urgency, remote
781          return self.create_page(          return self.create_page(
# Line 1142  Debian bug number.'''), Line 1158  Debian bug number.'''),
1158      def url_nvd(self, url, name):      def url_nvd(self, url, name):
1159          return url.absolute("http://web.nvd.nist.gov/view/vuln/detail",          return url.absolute("http://web.nvd.nist.gov/view/vuln/detail",
1160                              vulnId=name)                              vulnId=name)
1161        def url_rhbug(self, url, name):
1162            return url.absolute("https://bugzilla.redhat.com/show_bug.cgi",
1163                                id=name)
1164    
1165      def url_dsa(self, url, dsa, re_dsa=re.compile(r'^DSA-(\d+)(?:-\d+)?$')):      def url_dsa(self, url, dsa, re_dsa=re.compile(r'^DSA-(\d+)(?:-\d+)?$')):
1166          match = re_dsa.match(dsa)          match = re_dsa.match(dsa)
# Line 1198  Debian bug number.'''), Line 1217  Debian bug number.'''),
1217          if name is None:          if name is None:
1218              name = cve              name = cve
1219          return A(self.url_nvd(url, cve), name)          return A(self.url_nvd(url, cve), name)
1220    
1221        def make_rhbug_ref(self, url, cve, name=None):
1222            if name is None:
1223                name = cve
1224            return A(self.url_rhbug(url, cve), name)
1225    
1226      def make_dsa_ref(self, url, dsa, name=None):      def make_dsa_ref(self, url, dsa, name=None):
1227          if name is None:          if name is None:
# Line 1228  Debian bug number.'''), Line 1252  Debian bug number.'''),
1252    
1253      def make_red(self, contents):      def make_red(self, contents):
1254          return SPAN(contents, _class="red")          return SPAN(contents, _class="red")
1255    
1256        def make_purple(self, contents):
1257            return SPAN(contents, _class="purple")
1258    
1259      def make_dangerous(self, contents):      def make_dangerous(self, contents):
1260          return SPAN(contents, _class="dangerous")          return SPAN(contents, _class="dangerous")

Legend:
Removed from v.12999  
changed lines
  Added in v.13784

  ViewVC Help
Powered by ViewVC 1.1.5