xref: /aosp_15_r20/external/AFLplusplus/test/test-multiple-mutators.c (revision 08b48e0b10e97b33e7b60c5b6e2243bd915777f2)
1*08b48e0bSAndroid Build Coastguard Worker /**
2*08b48e0bSAndroid Build Coastguard Worker  * Test-Case for multiple custom mutators in C
3*08b48e0bSAndroid Build Coastguard Worker  * Reference:
4*08b48e0bSAndroid Build Coastguard Worker  * https://github.com/bruce30262/libprotobuf-mutator_fuzzing_learning/blob/master/4_libprotobuf_aflpp_custom_mutator/vuln.c
5*08b48e0bSAndroid Build Coastguard Worker  */
6*08b48e0bSAndroid Build Coastguard Worker 
7*08b48e0bSAndroid Build Coastguard Worker #include <stdio.h>
8*08b48e0bSAndroid Build Coastguard Worker #include <stdlib.h>
9*08b48e0bSAndroid Build Coastguard Worker #include <string.h>
10*08b48e0bSAndroid Build Coastguard Worker #include <unistd.h>
11*08b48e0bSAndroid Build Coastguard Worker 
main(int argc,char ** argv)12*08b48e0bSAndroid Build Coastguard Worker int main(int argc, char **argv) {
13*08b48e0bSAndroid Build Coastguard Worker 
14*08b48e0bSAndroid Build Coastguard Worker   int  a = 0;
15*08b48e0bSAndroid Build Coastguard Worker   char s[100];
16*08b48e0bSAndroid Build Coastguard Worker   read(0, s, 100);
17*08b48e0bSAndroid Build Coastguard Worker 
18*08b48e0bSAndroid Build Coastguard Worker   if (s[7] == 'B') { abort(); }
19*08b48e0bSAndroid Build Coastguard Worker 
20*08b48e0bSAndroid Build Coastguard Worker   return 0;
21*08b48e0bSAndroid Build Coastguard Worker 
22*08b48e0bSAndroid Build Coastguard Worker }
23*08b48e0bSAndroid Build Coastguard Worker 
24