|
6 | 6 | import zipfile |
7 | 7 |
|
8 | 8 | # Used to access Juliet Suite or to confirm its existence in the current dir |
9 | | -juliet_url = 'https://samate.nist.gov/SRD/testsuites/juliet/Juliet_Test_Suite_v1.3_for_C_Cpp.zip' |
| 9 | +juliet_url = 'https://samate.nist.gov/SARD/downloads/test-suites/2017-10-01-juliet-test-suite-for-c-cplusplus-v1-3.zip' |
10 | 10 | juliet_path = 'C/testcases' |
11 | 11 |
|
12 | 12 | # Checking if the testcases path exists, if not the script will download the Juliet Suite |
@@ -74,7 +74,7 @@ def check_path(filepath): |
74 | 74 | # '_good' or '_bad' determined by input parameter 'mode' |
75 | 75 | def goblint_cmd(filepath, filename, mode): |
76 | 76 | func = re.sub('a?\.c$', mode, filename) # File ending is cut and replaced by mode |
77 | | - cmd = goblint_path + ' ' + filepath + ' ' + testsupport_files + ' -I ' + testsupport_path + ' --sets "mainfun[+]" ' + func + ' --enable dbg.debug --enable dbg.timing.enabled' |
| 77 | + cmd = goblint_path + ' ' + filepath + ' ' + testsupport_files + ' -I ' + testsupport_path + ' --set "mainfun[+]" ' + func + ' --set ana.malloc.unique_address_count 1 --enable dbg.debug --enable dbg.timing.enabled' |
78 | 78 | print(filename + ' -- ' + mode[1:] + ' ', end='\r') |
79 | 79 | process = subprocess.run(cmd, shell=True, check=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True) |
80 | 80 | #title = '#####################\n' + mode.upper() + '\n#####################\n\n' |
@@ -135,7 +135,7 @@ def files_output_to_HTML(testcases, filepath, html_table): |
135 | 135 | # # # MAIN PROCEDURES # # # |
136 | 136 |
|
137 | 137 | # Regex string that is used to confirm that vulnerabilities were detected |
138 | | -v_detection = 'is dead!|Summary for all memory locations:' |
| 138 | +v_detection = 'is dead!|\[Warning\]\[Race\]' |
139 | 139 |
|
140 | 140 | # Blanks for HTML content |
141 | 141 | # '' - empty string for HTML table that will contain results from Goblint |
|
0 commit comments