diff options
author | Florian Weimer <fw@deneb.enyo.de> | 2010-05-08 18:27:11 +0000 |
---|---|---|
committer | Florian Weimer <fw@deneb.enyo.de> | 2010-05-08 18:27:11 +0000 |
commit | 3de17239658f2eccc4a00d87a5aebfb9ac8011f7 (patch) | |
tree | 64cfbd0d06735e4d14008bd28dbd695521854991 /lib/python/sectracker/parsers.py | |
parent | 5108c2e36844a6b7a06e3e167450841c5e6acc28 (diff) |
sectracker.parsers.dtsalist(): DTSA file parser
git-svn-id: svn+ssh://svn.debian.org/svn/secure-testing@14649 e39458fd-73e7-0310-bf30-c45bca0a0e42
Diffstat (limited to 'lib/python/sectracker/parsers.py')
-rw-r--r-- | lib/python/sectracker/parsers.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/python/sectracker/parsers.py b/lib/python/sectracker/parsers.py index f861e033d7..9ff573ddaa 100644 --- a/lib/python/sectracker/parsers.py +++ b/lib/python/sectracker/parsers.py @@ -274,3 +274,20 @@ def dsalist(path, f): _checkrelease(anns, diag, "DSA") return Bug(path, Header(headerlineno, name, None), tuple(anns)) return _parselist(path, f, parseheader, finish) + +@_xpickle.loader("DTSA" + FORMAT) +def dtsalist(path, f): + re_header = re.compile( + r'^\[([A-Z][a-z]{2,}) (\d\d?)(?:st|nd|rd|th), (\d{4})\] ' + + r'(DTSA-\d+-\d+)\s+' + + r'(.*?)\s*$') + def parseheader(line): + match = re_header.match(line) + if match is None: + return None + return match.groups() + def finish(header, headerlineno, anns, diag): + d, m, y, name, desc = header + _checkrelease(anns, diag, "DTSA") + return Bug(path, Header(headerlineno, name, None), tuple(anns)) + return _parselist(path, f, parseheader, finish) |