@@ -24,33 +24,24 @@ def output_cves(self, outfile, output=None):
24
24
""" Output a list of CVEs
25
25
format is modules[checker_name][version] = dict{id: severity}
26
26
"""
27
- # if the output is csv we must open a file
28
- if output == "csv" :
29
- outfile = open (f"{ outfile } " , "w" )
30
-
31
- writer = csv .writer (outfile )
32
- writer .writerow (["Module Name" , "Version" , "CVE Number" , "Severity" ])
33
27
34
28
writer = csv .writer (outfile )
29
+ writer .writerow (["Module Name" , "Version" , "CVE Number" , "Severity" ])
35
30
for modulename , versions in self .modules .items ():
36
31
for version , cve_list in versions .items ():
37
32
for cve_number , cve_severity in cve_list .items ():
38
33
row = [modulename , version , cve_number , cve_severity ]
39
34
writer .writerow (row )
40
35
41
- # We must also close the file
42
- if output == "csv" :
43
- outfile .close ()
44
-
45
- def output_csv (self ):
36
+ def output_file (self , output = "csv" ):
46
37
47
- """ Generate a CSV file for list of CVE """
38
+ """ Generate a file for list of CVE """
48
39
49
40
# Check if we need to generate a filename
50
41
if self .filename == None :
51
- self .generate_filename ("csv" )
42
+ self .generate_filename (output )
52
43
else :
53
- self .filename = f"{ self .filename } .csv "
44
+ self .filename = f"{ self .filename } .{ output } "
54
45
# check if the filename already exists
55
46
file_list = os .listdir (os .getcwd ())
56
47
if self .filename in file_list :
@@ -60,7 +51,7 @@ def output_csv(self):
60
51
self .logger .info (
61
52
"Generating a new filename with Default Naming Convention"
62
53
)
63
- self .generate_filename ("csv" )
54
+ self .generate_filename (output )
64
55
65
56
# try opening that file
66
57
try :
@@ -70,10 +61,11 @@ def output_csv(self):
70
61
except Exception as E :
71
62
self .logger .warning (E )
72
63
self .logger .info ("Switching Back to Default Naming Convention" )
73
- self .generate_filename ("csv" )
64
+ self .generate_filename (output )
74
65
75
66
# Log the filename generated
76
- self .logger .info (f"CSV output stored at { os .getcwd ()} /{ self .filename } " )
67
+ self .logger .info (f"Output stored at { os .getcwd ()} /{ self .filename } " )
77
68
78
69
# call to output_cves
79
- self .output_cves (self .filename , "csv" )
70
+ with open (self .filename , "w" ) as f :
71
+ self .output_cves (f , output )
0 commit comments