summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'pym/kernelcheck/kernelcheck.py')
-rwxr-xr-xpym/kernelcheck/kernelcheck.py34
1 files changed, 31 insertions, 3 deletions
diff --git a/pym/kernelcheck/kernelcheck.py b/pym/kernelcheck/kernelcheck.py
index 0369bfb..a2d2437 100755
--- a/pym/kernelcheck/kernelcheck.py
+++ b/pym/kernelcheck/kernelcheck.py
@@ -3,7 +3,7 @@
# Copyright 2009-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-from portage.output import bold, colorize, darkgreen, green, teal #TODO
+from portage.output import bold, colorize, darkgreen, green, teal, blue#TODO
from _emerge.stdout_spinner import stdout_spinner
from _emerge.userquery import userquery
@@ -275,12 +275,40 @@ def print_summary(vullist):
elif cve.severity == 'Medium':
severity = 'WARN'
+ cve_text = str()
+ cve_area = str()
+
+ if 'AV:L' in cve.vector or 'AV:A' in cve.vector:
+ cve_area += color('WARN', 'local')
+ else:
+ cve_area += color('BAD', 'network')
+
+ #no access
+ #no authentification
+
+ if 'C:P' in cve.vector or 'C:C' in cve.vector:
+ cve_text += ' -confidentiality'
+
+ if 'I:P' in cve.vector or 'I:C' in cve.vector:
+ cve_text += ' -integrity'
+
+ if 'A:P' in cve.vector or 'A:C' in cve.vector:
+ cve_text += ' -availability'
+
+ if ('C:P' in cve.vector or 'C:C' in cve.vector) \
+ and ('I:P' in cve.vector or 'I:C' in cve.vector) \
+ and ('A:P' in cve.vector or 'A:C' in cve.vector):
+ cve_text = ' -security'
+
first_text = textwrap.wrap(cve.desc, term[1] - 44)[0]
- print '[%s %26s] %s CVSS="%s" %s' % (darkgreen('bugid'),
+ print '[%s %26s] %s CVSS="%s %s%s"' % (darkgreen('bugid'),
color('GOOD', item.bugid),
darkgreen(cve.cve),
color(severity, cve.score),
- teal('%s...' % first_text)
+ cve_area,
+ blue(cve_text)
+ #(AV:L/AC:L/Au:N/C:N/I:N/A:P)
+ #teal('%s...' % first_text)
)
print ''