mirror of
https://github.com/AFLplusplus/AFLplusplus.git
synced 2025-06-16 03:48:08 +00:00
Fixed symcc custom mutator
This commit is contained in:
27
custom_mutators/symcc/test_examples/file_test.c
Normal file
27
custom_mutators/symcc/test_examples/file_test.c
Normal file
@ -0,0 +1,27 @@
|
||||
#include <stdio.h>
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
|
||||
int main(int argc, char** argv){
|
||||
if (argc<2){
|
||||
printf("Need a file argument\n");
|
||||
return 1;
|
||||
}
|
||||
int fd=open(argv[1],O_RDONLY);
|
||||
if (fd<0){
|
||||
printf("Couldn't open file\n");
|
||||
return 1;
|
||||
}
|
||||
uint32_t value = 0;
|
||||
|
||||
read(fd,&value,sizeof(value));
|
||||
close(fd);
|
||||
|
||||
value=value^0xffffffff;
|
||||
if (value== 0x11223344) printf("Value one\n");
|
||||
if (value == 0x44332211) printf("Value two\n");
|
||||
if (value != 0x0) printf("Not zero\n");
|
||||
return 0;
|
||||
}
|
22
custom_mutators/symcc/test_examples/stdin_test.c
Normal file
22
custom_mutators/symcc/test_examples/stdin_test.c
Normal file
@ -0,0 +1,22 @@
|
||||
#include <stdio.h>
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
|
||||
int main(int argc, char** argv)
|
||||
{
|
||||
char input_buffer[16];
|
||||
uint32_t comparisonValue;
|
||||
size_t bytesRead;
|
||||
bytesRead=read(STDIN_FILENO,input_buffer, sizeof(input_buffer));
|
||||
if (bytesRead < 0) exit(-1);
|
||||
comparisonValue=*(uint32_t*)input_buffer;
|
||||
comparisonValue=comparisonValue^0xff112233;
|
||||
if (comparisonValue==0x66554493){
|
||||
printf("First value\n");
|
||||
}
|
||||
else{
|
||||
if (comparisonValue==0x84444415) printf("Second value\n");
|
||||
}
|
||||
return 0;
|
||||
}
|
Reference in New Issue
Block a user