xref: /aosp_15_r20/external/cronet/third_party/libxml/fuzz/README (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker# Seed Corpus
2*6777b538SAndroid Build Coastguard Worker
3*6777b538SAndroid Build Coastguard WorkerThe `seed_corpus` directory was created using test data from the libxml2 repo by
4*6777b538SAndroid Build Coastguard Workerrunning the following commands:
5*6777b538SAndroid Build Coastguard Worker
6*6777b538SAndroid Build Coastguard Worker```bash
7*6777b538SAndroid Build Coastguard Worker# Minimize the test data using xml_parser_fuzzer.
8*6777b538SAndroid Build Coastguard Worker$ xml_parser_fuzzer -use_value_profile=1 -max_len=65536 -rss_limit_mb=8192 -merge=1 xml_min1 ~/Projects/libxml2/test
9*6777b538SAndroid Build Coastguard Worker
10*6777b538SAndroid Build Coastguard Worker# Minimize the test data using libxml_xml_read_memory_fuzzer.
11*6777b538SAndroid Build Coastguard Worker$ libxml_xml_read_memory_fuzzer -use_value_profile=1 -max_len=65536 -rss_limit_mb=8192 -merge=1 xml_min2 ~/Projects/libxml2/test
12*6777b538SAndroid Build Coastguard Worker
13*6777b538SAndroid Build Coastguard Worker# Merge the two minimized versions (the majority of the files are the same).
14*6777b538SAndroid Build Coastguard Worker$ cp xml_min1/* xml_min2/* seed_corpus/
15*6777b538SAndroid Build Coastguard Worker```
16*6777b538SAndroid Build Coastguard Worker
17*6777b538SAndroid Build Coastguard WorkerThis corpus gives a good code coverage for the existing XML fuzzers in Chromium.
18*6777b538SAndroid Build Coastguard WorkerSee //testing/libfuzzer/README.md for more information about fuzzing.
19*6777b538SAndroid Build Coastguard Worker
20*6777b538SAndroid Build Coastguard Worker# Dictionary
21*6777b538SAndroid Build Coastguard Worker
22*6777b538SAndroid Build Coastguard WorkerThe `xml.dict` was taken from AFL fuzzer with a few minor additions being made.
23