Fix file writing
This commit is contained in:
parent
fb2416e51a
commit
563efb1bc9
@ -103,18 +103,20 @@ int main(int argc, char **argv)
|
||||
argc -= 5;
|
||||
|
||||
unsigned int num_tasks = 5;
|
||||
int full_input_room = (int) pow(input_size, num_tasks);
|
||||
int full_input_room = (int)pow(input_size, num_tasks);
|
||||
printf("Full input room: %d\n", full_input_room);
|
||||
unsigned long *deltas = malloc(full_input_room * sizeof(unsigned long));
|
||||
if (deltas == NULL) {
|
||||
if (deltas == NULL)
|
||||
{
|
||||
fprintf(stderr, "Memory allocation failed\n");
|
||||
exit(1);
|
||||
}
|
||||
u_int32_t *inputs = malloc(full_input_room * sizeof(u_int32_t));
|
||||
if (inputs == NULL) {
|
||||
if (inputs == NULL)
|
||||
{
|
||||
fprintf(stderr, "Memory allocation failed\n");
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
//========= Instrumentation end
|
||||
qemu_init(argc, argv);
|
||||
//========= Instrumentation start
|
||||
@ -136,6 +138,11 @@ int main(int argc, char **argv)
|
||||
|
||||
int task_inputs[num_tasks];
|
||||
|
||||
fclose(fopen(output_path, "w"));
|
||||
|
||||
FILE *fptr = fopen(output_path, "a");
|
||||
|
||||
|
||||
// input of all tasks combined
|
||||
for (long i = 0; i < full_input_room; i++)
|
||||
{
|
||||
@ -143,7 +150,7 @@ int main(int argc, char **argv)
|
||||
for (int j = 0; j < num_tasks; j++)
|
||||
{
|
||||
// from the "global input" i, extract the input bits for the task j
|
||||
task_inputs[j] = (i >> (j * (__builtin_popcount(input_size - 1) ))) & (input_size - 1);
|
||||
task_inputs[j] = (i >> (j * (__builtin_popcount(input_size - 1)))) & (input_size - 1);
|
||||
printf("Task %d: %d\n", j, task_inputs[j]);
|
||||
}
|
||||
|
||||
@ -171,8 +178,6 @@ int main(int argc, char **argv)
|
||||
libafl_qemu_write_reg(cpu, j + 1, register_in_32b);
|
||||
}
|
||||
|
||||
|
||||
|
||||
libafl_qemu_set_native_breakpoint(start);
|
||||
|
||||
vm_start();
|
||||
@ -199,17 +204,18 @@ int main(int argc, char **argv)
|
||||
inputs[i] = i;
|
||||
deltas[i] = end_count - start_count;
|
||||
|
||||
printf("Delta: %lu\n", deltas[i]);
|
||||
printf("Delta: %lu\n", deltas[i]);
|
||||
|
||||
fprintf(fptr, "%d", inputs[i]);
|
||||
for (int j = 0; j < num_tasks; j++)
|
||||
{
|
||||
fprintf(fptr, ",%d", task_inputs[j]);
|
||||
}
|
||||
fprintf(fptr, ",%lu\n", deltas[i]);
|
||||
}
|
||||
|
||||
// // Write to serial port
|
||||
// qemu_chr_fe_write(serial_chr, data, length);
|
||||
FILE *fptr = fopen(output_path, "w");
|
||||
|
||||
for (int i = 0; i < full_input_room; i++)
|
||||
{
|
||||
fprintf(fptr, "%d,%lu\n", inputs[i], deltas[i]);
|
||||
}
|
||||
|
||||
fclose(fptr);
|
||||
free(deltas);
|
||||
|
Loading…
x
Reference in New Issue
Block a user