Fuzz introspector: h2o-fuzzer-url
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
2 2 1 :

['strlen']

2 70 h2o_url_parse call site: 00002 /src/h2o/lib/common/url.c:258
2 2 1 :

['posix_memalign']

2 2 h2o_mem_aligned_alloc call site: 00022 /src/h2o/include/h2o/memory.h:449
0 0 None 0 38 h2o_mem_clear_pool call site: 00029 /src/h2o/lib/common/memory.c:165
0 0 None 0 4 h2o_vector__expand call site: 00035 /src/h2o/lib/common/memory.c:548
0 0 None 0 0 h2o_mem_alloc call site: 00020 /src/h2o/include/h2o/memory.h:442
0 0 None 0 0 h2o_mem_realloc call site: 00040 /src/h2o/include/h2o/memory.h:461
0 0 None 0 0 h2o_memcpy call site: 00026 /src/h2o/include/h2o/memory.h:418
0 0 None 0 0 h2o_concat_list call site: 00017 /src/h2o/lib/common/string.c:574

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 h2o_mem_init_pool [function] [call site] 00001
1 h2o_url_parse [function] [call site] 00002
2 strlen [call site] 00003
2 parse_scheme [function] [call site] 00004
3 memcmp [call site] 00005
3 memcmp [call site] 00006
3 memcmp [call site] 00007
2 parse_authority_and_path [function] [call site] 00008
3 h2o_url_parse_hostport [function] [call site] 00009
4 memchr [call site] 00010
4 h2o_iovec_init [function] [call site] 00011
4 h2o_iovec_init [function] [call site] 00012
3 h2o_iovec_init [function] [call site] 00013
3 h2o_iovec_init [function] [call site] 00014
3 h2o_iovec_init [function] [call site] 00015
3 h2o_iovec_init [function] [call site] 00016
3 h2o_concat_list [function] [call site] 00017
4 h2o_mem_alloc_pool_aligned [function] [call site] 00018
5 h2o_mem__do_alloc_pool_aligned [function] [call site] 00019
6 h2o_mem_alloc [function] [call site] 00020
6 h2o_mem_alloc_recycle [function] [call site] 00021
7 h2o_mem_aligned_alloc [function] [call site] 00022
8 h2o_mem_alloc [function] [call site] 00023
8 posix_memalign [call site] 00024
4 h2o_mem_alloc [function] [call site] 00025
4 h2o_memcpy [function] [call site] 00026
1 __assert_fail [call site] 00027
1 __assert_fail [call site] 00028
1 h2o_mem_clear_pool [function] [call site] 00029
2 h2o_mem_release_shared [function] [call site] 00030
3 __assert_fail [call site] 00031
2 h2o_mem_free_recycle [function] [call site] 00032
3 h2o_vector__reserve [function] [call site] 00033
4 h2o_vector__expand [function] [call site] 00034
5 __assert_fail [call site] 00035
5 h2o_mem_alloc_pool_aligned [function] [call site] 00036
6 __assert_fail [call site] 00037
5 h2o_memcpy [function] [call site] 00038
5 h2o_mem_realloc [function] [call site] 00039
6 realloc [call site] 00040