Repository navigation
Expand file tree
/
Copy pathlibc-test.js
More file actions
250 lines (248 loc) · 10.9 KB
/
Copy pathlibc-test.js
File metadata and controls
250 lines (248 loc) · 10.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
let points = {
// static 结果处理
'entry-static.exe argv': [0, 1],
'entry-static.exe basename': [0, 1],
'entry-static.exe clocale_mbfuncs': [0, 1],
'entry-static.exe clock_gettime': [0, 1],
'entry-static.exe crypt': [0, 1],
'entry-static.exe dirname': [0, 1],
'entry-static.exe env': [0, 1],
'entry-static.exe fdopen': [0, 1],
'entry-static.exe fnmatch': [0, 1],
'entry-static.exe fscanf': [0, 1],
'entry-static.exe fwscanf': [0, 1],
'entry-static.exe iconv_open': [0, 1],
'entry-static.exe inet_pton': [0, 1],
'entry-static.exe mbc': [0, 1],
'entry-static.exe memstream': [0, 1],
'entry-static.exe pthread_cancel_points': [0, 1],
'entry-static.exe pthread_cancel': [0, 1],
'entry-static.exe pthread_cond': [0, 1],
'entry-static.exe pthread_tsd': [0, 1],
'entry-static.exe qsort': [0, 1],
'entry-static.exe random': [0, 1],
'entry-static.exe search_hsearch': [0, 1],
'entry-static.exe search_insque': [0, 1],
'entry-static.exe search_lsearch': [0, 1],
'entry-static.exe search_tsearch': [0, 1],
'entry-static.exe setjmp': [0, 1],
'entry-static.exe snprintf': [0, 1],
'entry-static.exe socket': [0, 1],
'entry-static.exe sscanf': [0, 1],
'entry-static.exe sscanf_long': [0, 1],
'entry-static.exe stat': [0, 1],
'entry-static.exe strftime': [0, 1],
'entry-static.exe string': [0, 1],
'entry-static.exe string_memcpy': [0, 1],
'entry-static.exe string_memmem': [0, 1],
'entry-static.exe string_memset': [0, 1],
'entry-static.exe string_strchr': [0, 1],
'entry-static.exe string_strcspn': [0, 1],
'entry-static.exe string_strstr': [0, 1],
'entry-static.exe strptime': [0, 1],
'entry-static.exe strtod': [0, 1],
'entry-static.exe strtod_simple': [0, 1],
'entry-static.exe strtof': [0, 1],
'entry-static.exe strtol': [0, 1],
'entry-static.exe strtold': [0, 1],
'entry-static.exe swprintf': [0, 1],
'entry-static.exe tgmath': [0, 1],
'entry-static.exe time': [0, 1],
'entry-static.exe tls_align': [0, 1],
'entry-static.exe udiv': [0, 1],
'entry-static.exe ungetc': [0, 1],
'entry-static.exe utime': [0, 1],
'entry-static.exe wcsstr': [0, 1],
'entry-static.exe wcstol': [0, 1],
'entry-static.exe pleval': [0, 1],
'entry-static.exe daemon_failure': [0, 1],
'entry-static.exe dn_expand_empty': [0, 1],
'entry-static.exe dn_expand_ptr_0': [0, 1],
'entry-static.exe fflush_exit': [0, 1],
'entry-static.exe fgets_eof': [0, 1],
'entry-static.exe fgetwc_buffering': [0, 1],
'entry-static.exe fpclassify_invalid_ld80': [0, 1],
'entry-static.exe ftello_unflushed_append': [0, 1],
'entry-static.exe getpwnam_r_crash': [0, 1],
'entry-static.exe getpwnam_r_errno': [0, 1],
'entry-static.exe iconv_roundtrips': [0, 1],
'entry-static.exe inet_ntop_v4mapped': [0, 1],
'entry-static.exe inet_pton_empty_last_field': [0, 1],
'entry-static.exe iswspace_null': [0, 1],
'entry-static.exe lrand48_signextend': [0, 1],
'entry-static.exe lseek_large': [0, 1],
'entry-static.exe malloc_0': [0, 1],
'entry-static.exe mbsrtowcs_overflow': [0, 1],
'entry-static.exe memmem_oob_read': [0, 1],
'entry-static.exe memmem_oob': [0, 1],
'entry-static.exe mkdtemp_failure': [0, 1],
'entry-static.exe mkstemp_failure': [0, 1],
'entry-static.exe printf_1e9_oob': [0, 1],
'entry-static.exe printf_fmt_g_round': [0, 1],
'entry-static.exe printf_fmt_g_zeros': [0, 1],
'entry-static.exe printf_fmt_n': [0, 1],
'entry-static.exe pthread_robust_detach': [0, 1],
'entry-static.exe pthread_cancel_sem_wait': [0, 1],
'entry-static.exe pthread_cond_smasher': [0, 1],
'entry-static.exe pthread_condattr_setclock': [0, 1],
'entry-static.exe pthread_exit_cancel': [0, 1],
'entry-static.exe pthread_once_deadlock': [0, 1],
'entry-static.exe pthread_rwlock_ebusy': [0, 1],
'entry-static.exe putenv_doublefree': [0, 1],
'entry-static.exe regex_backref_0': [0, 1],
'entry-static.exe regex_bracket_icase': [0, 1],
'entry-static.exe regex_ere_backref': [0, 1],
'entry-static.exe regex_escaped_high_byte': [0, 1],
'entry-static.exe regex_negated_range': [0, 1],
'entry-static.exe regexec_nosub': [0, 1],
'entry-static.exe rewind_clear_error': [0, 1],
'entry-static.exe rlimit_open_files': [0, 1],
'entry-static.exe scanf_bytes_consumed': [0, 1],
'entry-static.exe scanf_match_literal_eof': [0, 1],
'entry-static.exe scanf_nullbyte_char': [0, 1],
'entry-static.exe setvbuf_unget': [0, 1],
'entry-static.exe sigprocmask_internal': [0, 1],
'entry-static.exe sscanf_eof': [0, 1],
'entry-static.exe statvfs': [0, 1],
'entry-static.exe strverscmp': [0, 1],
'entry-static.exe syscall_sign_extend': [0, 1],
'entry-static.exe uselocale_0': [0, 1],
'entry-static.exe wcsncpy_read_overflow': [0, 1],
'entry-static.exe wcsstr_false_negative': [0, 1],
// dynamic 结果处理
'entry-dynamic.exe argv': [0 ,1],
'entry-dynamic.exe basename': [0 ,1],
'entry-dynamic.exe clocale_mbfuncs': [0 ,1],
'entry-dynamic.exe clock_gettime': [0 ,1],
'entry-dynamic.exe crypt': [0 ,1],
'entry-dynamic.exe dirname': [0 ,1],
'entry-dynamic.exe dlopen': [0 ,1],
'entry-dynamic.exe env': [0 ,1],
'entry-dynamic.exe fdopen': [0 ,1],
'entry-dynamic.exe fnmatch': [0 ,1],
'entry-dynamic.exe fscanf': [0 ,1],
'entry-dynamic.exe fwscanf': [0 ,1],
'entry-dynamic.exe iconv_open': [0 ,1],
'entry-dynamic.exe inet_pton': [0 ,1],
'entry-dynamic.exe mbc': [0 ,1],
'entry-dynamic.exe memstream': [0 ,1],
'entry-dynamic.exe pthread_cancel_points': [0 ,1],
'entry-dynamic.exe pthread_cancel': [0 ,1],
'entry-dynamic.exe pthread_cond': [0 ,1],
'entry-dynamic.exe pthread_tsd': [0 ,1],
'entry-dynamic.exe qsort': [0 ,1],
'entry-dynamic.exe random': [0 ,1],
'entry-dynamic.exe search_hsearch': [0 ,1],
'entry-dynamic.exe search_insque': [0 ,1],
'entry-dynamic.exe search_lsearch': [0 ,1],
'entry-dynamic.exe search_tsearch': [0 ,1],
'entry-dynamic.exe sem_init': [0 ,1],
'entry-dynamic.exe setjmp': [0 ,1],
'entry-dynamic.exe snprintf': [0 ,1],
'entry-dynamic.exe socket': [0 ,1],
'entry-dynamic.exe sscanf': [0 ,1],
'entry-dynamic.exe sscanf_long': [0 ,1],
'entry-dynamic.exe stat': [0 ,1],
'entry-dynamic.exe strftime': [0 ,1],
'entry-dynamic.exe string': [0 ,1],
'entry-dynamic.exe string_memcpy': [0 ,1],
'entry-dynamic.exe string_memmem': [0 ,1],
'entry-dynamic.exe string_memset': [0 ,1],
'entry-dynamic.exe string_strchr': [0 ,1],
'entry-dynamic.exe string_strcspn': [0 ,1],
'entry-dynamic.exe string_strstr': [0 ,1],
'entry-dynamic.exe strptime': [0 ,1],
'entry-dynamic.exe strtod': [0 ,1],
'entry-dynamic.exe strtod_simple': [0 ,1],
'entry-dynamic.exe strtof': [0 ,1],
'entry-dynamic.exe strtol': [0 ,1],
'entry-dynamic.exe strtold': [0 ,1],
'entry-dynamic.exe swprintf': [0 ,1],
'entry-dynamic.exe tgmath': [0 ,1],
'entry-dynamic.exe time': [0 ,1],
'entry-dynamic.exe tls_init': [0 ,1],
'entry-dynamic.exe tls_local_exec': [0 ,1],
'entry-dynamic.exe udiv': [0 ,1],
'entry-dynamic.exe ungetc': [0 ,1],
'entry-dynamic.exe utime': [0 ,1],
'entry-dynamic.exe wcsstr': [0 ,1],
'entry-dynamic.exe wcstol': [0 ,1],
'entry-dynamic.exe daemon_failure': [0 ,1],
'entry-dynamic.exe dn_expand_empty': [0 ,1],
'entry-dynamic.exe dn_expand_ptr_0': [0 ,1],
'entry-dynamic.exe fflush_exit': [0 ,1],
'entry-dynamic.exe fgets_eof': [0 ,1],
'entry-dynamic.exe fgetwc_buffering': [0 ,1],
'entry-dynamic.exe fpclassify_invalid_ld80': [0 ,1],
'entry-dynamic.exe ftello_unflushed_append': [0 ,1],
'entry-dynamic.exe getpwnam_r_crash': [0 ,1],
'entry-dynamic.exe getpwnam_r_errno': [0 ,1],
'entry-dynamic.exe iconv_roundtrips': [0 ,1],
'entry-dynamic.exe inet_ntop_v4mapped': [0 ,1],
'entry-dynamic.exe inet_pton_empty_last_field': [0 ,1],
'entry-dynamic.exe iswspace_null': [0 ,1],
'entry-dynamic.exe lrand48_signextend': [0 ,1],
'entry-dynamic.exe lseek_large': [0 ,1],
'entry-dynamic.exe malloc_0': [0 ,1],
'entry-dynamic.exe mbsrtowcs_overflow': [0 ,1],
'entry-dynamic.exe memmem_oob_read': [0 ,1],
'entry-dynamic.exe memmem_oob': [0 ,1],
'entry-dynamic.exe mkdtemp_failure': [0 ,1],
'entry-dynamic.exe mkstemp_failure': [0 ,1],
'entry-dynamic.exe printf_1e9_oob': [0 ,1],
'entry-dynamic.exe printf_fmt_g_round': [0 ,1],
'entry-dynamic.exe printf_fmt_g_zeros': [0 ,1],
'entry-dynamic.exe printf_fmt_n': [0 ,1],
'entry-dynamic.exe pthread_robust_detach': [0 ,1],
'entry-dynamic.exe pthread_cond_smasher': [0 ,1],
'entry-dynamic.exe pthread_condattr_setclock': [0 ,1],
'entry-dynamic.exe pthread_exit_cancel': [0 ,1],
'entry-dynamic.exe pthread_once_deadlock': [0 ,1],
'entry-dynamic.exe pthread_rwlock_ebusy': [0 ,1],
'entry-dynamic.exe putenv_doublefree': [0 ,1],
'entry-dynamic.exe regex_backref_0': [0 ,1],
'entry-dynamic.exe regex_bracket_icase': [0 ,1],
'entry-dynamic.exe regex_ere_backref': [0 ,1],
'entry-dynamic.exe regex_escaped_high_byte': [0 ,1],
'entry-dynamic.exe regex_negated_range': [0 ,1],
'entry-dynamic.exe regexec_nosub': [0 ,1],
'entry-dynamic.exe rewind_clear_error': [0 ,1],
'entry-dynamic.exe rlimit_open_files': [0 ,1],
'entry-dynamic.exe scanf_bytes_consumed': [0 ,1],
'entry-dynamic.exe scanf_match_literal_eof': [0 ,1],
'entry-dynamic.exe scanf_nullbyte_char': [0 ,1],
'entry-dynamic.exe setvbuf_unget': [0 ,1],
'entry-dynamic.exe sigprocmask_internal': [0 ,1],
'entry-dynamic.exe sscanf_eof': [0 ,1],
'entry-dynamic.exe statvfs': [0 ,1],
'entry-dynamic.exe strverscmp': [0 ,1],
'entry-dynamic.exe syscall_sign_extend': [0 ,1],
'entry-dynamic.exe tls_get_new_dtv': [0 ,1],
'entry-dynamic.exe uselocale_0': [0 ,1],
'entry-dynamic.exe wcsncpy_read_overflow': [0 ,1],
'entry-dynamic.exe wcsstr_false_negative': [0 ,1],
}
function judge(outputFile) {
let current = '';
let currentStatus = false;
outputFile = outputFile.replaceAll('\r\n', '\n').replaceAll('\r', '\n');
outputFile.trim().split('\n').forEach((value, index) => {
if(value.indexOf("========== START ") == 0 && value.endsWith(" ==========")) {
let title = value.replace("========== START ", "").replace(" ==========", "");
current = title;
currentStatus = false;
} else if(value.indexOf("========== END ") == 0 && value.endsWith(" ==========")) {
let title = value.replace("========== END ", "").replace(" ==========", "");
if (title != current) {
currentStatus = false;
}
if (currentStatus) points[current][0] = points[current][1];
} else {
if(value == 'Pass!') {
currentStatus = true;
}
}
})
return points;
}
module.exports.judge = judge;