SVN: security/cve_reader.py
shadzik
shadzik at pld-linux.org
Wed Aug 5 19:14:37 CEST 2009
Author: shadzik
Date: Wed Aug 5 19:14:37 2009
New Revision: 10451
Modified:
security/cve_reader.py
Log:
- add getCVEdesc function and try to use it in RSS feed
Modified: security/cve_reader.py
==============================================================================
--- security/cve_reader.py (original)
+++ security/cve_reader.py Wed Aug 5 19:14:37 2009
@@ -11,6 +11,8 @@
import readline
import time
import datetime
+from pyquery import PyQuery as pq
+import urllib2
import PyRSS2Gen
try:
@@ -227,6 +229,17 @@
# Huh, new entry is the youngest one
rootnode.insert(len(rootnode), package)
+# get cve description
+def getCVEdesc(cveID):
+ html = urllib2.urlopen("http://cve.mitre.org/cgi-bin/cvename.cgi?name=%s" % cveID).read()
+ html = pq(html)
+ line = 0
+ for i in html("td"):
+ if line == 55:
+ return i.text
+ line = line + 1
+
+
# returns index (tag position) in the node which is a list
def getTagIndex(node, tag):
item = ""
@@ -326,10 +339,12 @@
# retrives CVEs
cves = ""
+ cvedesc = ""
idx = getTagIndex(rootnode[item], 'cves')
for i in range(len(rootnode[item][idx])):
cves += "<a href=\"http://cve.mitre.org/cgi-bin/cvename.cgi?name=%s\">%s</a> " % (rootnode[item][idx][i].text, rootnode[item][idx][i].text)
+ cvedesc += getCVEdesc(rootnode[item][idx][i].text)
# date[0] - year; date[1] - month; date[2] - day
date = pkg['date'].split('/')
@@ -337,7 +352,7 @@
rssitem.insert(0,
PyRSS2Gen.RSSItem(
title = "New CVE fixes for %s" % pkg['spec'],
- description = "%s on rev. %s resolves: %s" % (pkg['spec'], pkg['revision'], cves),
+ description = "%s on rev. %s resolves: %s\n\nDescriptions:\n%s" % (pkg['spec'], pkg['revision'], cves, cvedesc),
pubDate = datetime.datetime(int(date[0]), int(date[1]), int(date[2]), 0, 0, 0),
guid = PyRSS2Gen.Guid("http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SPECS/%s?rev=%s" % (pkg['spec'], pkg['revision']))
)
More information about the pld-cvs-commit
mailing list