Fuzz introspector: libwget_robots_parse_fuzzer
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
0 0 None 8 330 wget_robots_parse call site: 00004 /src/wget2/libwget/robots.c:123
0 0 None 8 330 wget_robots_parse call site: 00020 /src/wget2/libwget/robots.c:150
0 0 None 8 330 wget_robots_parse call site: 00026 /src/wget2/libwget/robots.c:156
0 0 None 8 330 wget_robots_parse call site: 00036 /src/wget2/libwget/robots.c:173
0 0 None 0 37 wget_strncasecmp_ascii call site: 00008 /src/wget2/libwget/utils.c:161
0 0 None 0 37 wget_strncasecmp_ascii call site: 00008 /src/wget2/libwget/utils.c:167
0 0 None 0 27 wget_vector_add_memdup call site: 00028 /src/wget2/libwget/vector.c:224
0 0 None 0 21 wget_vector_add_memdup call site: 00029 /src/wget2/libwget/vector.c:227
0 0 None 0 16 wget_robots_parse call site: 00028 /src/wget2/libwget/robots.c:158
0 0 None 0 16 wget_robots_parse call site: 00037 /src/wget2/libwget/robots.c:175
0 0 None 0 0 c_strncasecmp call site: 00009 /src/wget2/lib/c-strncasecmp.c:33
0 0 None 0 0 wget_memdup call site: 00030 /src/wget2/libwget/mem.c:59

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 __assert_fail [call site] 00001
1 wget_robots_parse [function] [call site] 00002
2 strlen [call site] 00003
2 wget_calloc [function] [call site] 00004
2 parse_record_field [function] [call site] 00005
3 advance_ws [function] [call site] 00006
4 __ctype_b_loc [call site] 00007
3 wget_strncasecmp_ascii [function] [call site] 00008
4 c_strncasecmp [function] [call site] 00009
3 advance_ws [function] [call site] 00012
3 advance_ws [function] [call site] 00013
2 wget_strncasecmp_ascii [function] [call site] 00014
2 wget_vector_free [function] [call site] 00015
3 wget_vector_clear [function] [call site] 00016
2 parse_record_field [function] [call site] 00017
2 __ctype_b_loc [call site] 00018
2 wget_vector_free [function] [call site] 00019
2 wget_vector_create [function] [call site] 00020
3 wget_calloc [function] [call site] 00021
3 wget_malloc [function] [call site] 00022
2 wget_vector_set_destructor [function] [call site] 00023
2 path_free [function] [call site] 00024
2 __ctype_b_loc [call site] 00025
2 wget_strmemdup [function] [call site] 00026
3 wget_malloc [function] [call site] 00027
2 wget_vector_add_memdup [function] [call site] 00028
3 wget_memdup [function] [call site] 00029
4 wget_malloc [function] [call site] 00030
3 insert_element [function] [call site] 00031
4 wget_realloc [function] [call site] 00032
2 parse_record_field [function] [call site] 00033
2 __ctype_b_loc [call site] 00034
2 wget_vector_create [function] [call site] 00035
2 wget_strmemdup [function] [call site] 00036
2 wget_vector_add [function] [call site] 00037
3 insert_element [function] [call site] 00038
2 strchr [call site] 00039
2 wget_robots_free [function] [call site] 00040
3 wget_vector_free [function] [call site] 00041
3 wget_vector_free [function] [call site] 00042
1 wget_robots_free [function] [call site] 00043