From 6ba31d1444c08d65d15917f6f3b31b01f7b081f9 Mon Sep 17 00:00:00 2001 From: Kees Cook Date: Thu, 28 Jun 2007 20:44:42 +0000 Subject: clean up "published" vs "released" typos. added ubuntu table visualization script. git-svn-id: svn+ssh://svn.debian.org/svn/kernel-sec@874 e094ebfe-e918-0410-adfb-c712417f3574 --- scripts/ubuntu-table | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100755 scripts/ubuntu-table (limited to 'scripts') diff --git a/scripts/ubuntu-table b/scripts/ubuntu-table new file mode 100755 index 00000000..7a6d6fa7 --- /dev/null +++ b/scripts/ubuntu-table @@ -0,0 +1,44 @@ +#!/usr/bin/env python +import os, re + +releases = ['2.6.15-dapper-security', '2.6.17-edgy-security', '2.6.20-feisty-security'] + +table = dict() +cves = [elem for elem in os.listdir('.') if re.match('^CVE-\d+-\d+$',elem)] +for cve in cves: + table.setdefault(cve, dict()) + text = file(cve).read() + for rel in releases: + table[cve].setdefault(rel,"-unlisted-") + status = re.search('^%s:[ \t]*([^ \n]*)' % rel, text, re.MULTILINE) + if status: + state = status.group(1) + if state == '': + state = 'needs triage' + table[cve][rel] = state + +format = '%15s' +print ' ', +for rel in releases: + print format % rel.split('-')[1], +print + +for cve in cves: + ignore = 1 + needed = 0 + released = 0 + for rel in releases: + if table[cve][rel] != 'N/A' and table[cve][rel] != 'released' and table[cve][rel] != '-unlisted-': + ignore = 0 + if table[cve][rel] == 'needed': + needed = 1 + if table[cve][rel] == 'released': + released = 1 + + if not ignore: + print '%s: ' % cve, + for rel in releases: + print format % table[cve][rel], + if needed and released: + print ' [out of sync]', + print -- cgit v1.2.3