diff options
author | Guido Günther <agx@sigxcpu.org> | 2016-01-31 09:47:53 +0000 |
---|---|---|
committer | Guido Günther <agx@sigxcpu.org> | 2016-01-31 09:47:53 +0000 |
commit | c3f21ce0bd2ca3718ceb6903f922da3c1ba64720 (patch) | |
tree | ade74329e9b8aea01baa3a245d35b87ca3cc2ca6 /bin/tracker_data.py | |
parent | 7fc82dc339f3f9179876827d99427369d84f8a4b (diff) |
Add lts-needs-forward-port
This looks for issues fixed in LTS but yet unfixed in lts_next taking
into account next-oldstable-point-update.txt.
git-svn-id: svn+ssh://svn.debian.org/svn/secure-testing@39374 e39458fd-73e7-0310-bf30-c45bca0a0e42
Diffstat (limited to 'bin/tracker_data.py')
-rw-r--r-- | bin/tracker_data.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/bin/tracker_data.py b/bin/tracker_data.py index 28f8a7f17a..e1b97ae4f6 100644 --- a/bin/tracker_data.py +++ b/bin/tracker_data.py @@ -103,6 +103,7 @@ class TrackerData(object): with open(self.cached_data_path, 'r') as f: self.data = json.load(f) self.load_dsa_dla_needed() + self.load_point_updates() @classmethod def parse_needed_file(self, inputfile): @@ -137,6 +138,27 @@ class TrackerData(object): with open(os.path.join(self.DATA_DIR, 'dla-needed.txt'), 'r') as f: self.dla_needed = self.parse_needed_file(f) + @classmethod + def parse_point_update_file(self, inputfile): + CVE_RE = 'CVE-[0-9]{4}-[0-9X]{4}' + result = {} + for line in inputfile: + res = re.match(CVE_RE, line) + if res: + cve = res.group(0) + result[cve] = {} + continue + elif line.startswith('\t['): + dist, _, pkg, ver = line.split() + result[cve][pkg] = ver + return result + + def load_point_updates(self): + with open(os.path.join(self.DATA_DIR, 'next-oldstable-point-update.txt'), 'r') as f: + self.oldstable_point_update = self.parse_point_update_file(f) + with open(os.path.join(self.DATA_DIR, 'next-point-update.txt'), 'r') as f: + self.stable_point_update = self.parse_point_update_file(f) + def iterate_packages(self): """Iterate over known packages""" for pkg in self.data: |