@@ -439,18 +439,18 @@ def get_criticality_from_cvss_v3(score):
439439def convert_to_sarif (d ):
440440 from os . path import exists
441441 import json
442- cve_file = d . getVar ("CVE_CHECK_LOG" )
443- file_exists = exists (cve_file )
442+ cve_file = d . getVar ("CVE_CHECK_LOG" )
443+ file_exists = exists (cve_file )
444444 PN = d . getVar ("CVE_PRODUCT" )
445445
446446 if (file_exists ):
447- resultsList = []
447+ resultsList = []
448448 rulesList = []
449- output_file = open ("cve-output/%s.sarif" %PN , "w" )
450- fields = ['LAYER' , 'PACKAGE NAME' , 'PACKAGE VERSION' , 'ruleId' , 'CVE STATUS' , 'message' , 'CVSS v2 BASE SCORE' , 'CVSS v3 BASE SCORE' , 'level' , "help" ]
449+ output_file = open ("cve-output/%s.sarif" %PN , "w" )
450+ fields = ['LAYER' , 'PACKAGE NAME' , 'PACKAGE VERSION' , 'ruleId' , 'CVE STATUS' , 'message' , 'CVSS v2 BASE SCORE' , 'CVSS v3 BASE SCORE' , 'level' , "help" ]
451451
452452 with open (cve_file ) as fh :
453- resultsDictionary = {}
453+ resultsDictionary = {}
454454 rulesDictionary = {}
455455 while fh is not None :
456456 valuesList = get_vulnerability (fh )
@@ -494,24 +494,24 @@ def convert_to_sarif(d):
494494 output_file . write ('{\n' )
495495 output_file . write ('\t"$schema": "https://schemastore.azurewebsites.net/schemas/json/sarif-2.1.0.json",\n' )
496496 output_file . write ('\t"version": "2.1.0",\n' )
497- output_file . write ('\t"runs": [\n' )
498- output_file . write ('\t {\n' )
499- output_file . write ('\t\t"tool": {\n' )
497+ output_file . write ('\t"runs":\n\t[\t{\n' )
498+ output_file . write ('\t\t\t"tool": {\n' )
500499 output_file . write ('\t\t\t"driver": {\n' )
501500 output_file . write ('\t\t\t\t"name": "do_cve-check",\n' )
502501 output_file . write ('\t\t\t\t"fullName": "Yocto Vulnerability Scanner",\n' )
503502 output_file . write ('\t\t\t\t"informationUri": "https://pvs-studio.com/en/docs/manual/0038/",\n' )
504503 output_file . write ('\t\t\t\t"version": "1.0.1",\n' )
505- output_file . write ('\t\t\t\t"rules": ' )
506- json . dump (rulesList , output_file , indent = 4 ) # dumping rules in file
507- output_file . write ('\t\t\t }\n' ) # closing of driver
504+ output_file . write ('\t\t\t\t"rules": \n' )
505+ output_file . write ('\t\t\t\t\t\t' )
506+ json . dump (rulesList , output_file , indent = 15 ) # dumping rules in file
507+ output_file . write ('\n\t\t\t }\n' ) # closing of driver
508508 output_file . write ('\t\t},\n' ) # closing of tool
509- output_file . write ('\t\t"results": ' )
510- json . dump (resultsList , output_file , indent = 4 ) # dumping results in file
509+ output_file . write ('\t\t"results": \n' )
510+ output_file . write ('\t\t\t\t\t\t' )
511+ json . dump (resultsList , output_file , indent = 15 ) # dumping results in file
511512 output_file . write ('\n\t }' )
512513 output_file . write ('\n\t]' )
513514 output_file . write ('\n}' ) # closing bracket for schema
514515 output_file . close ()
515-
516516
517-
517+
0 commit comments