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

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
17 1 LLVMFuzzerTestOneInput call site: 00001 calloc
6 34 ndpi_hash_add_entry call site: 00034 ndpi_list_append
3 99 ndpi_encode_domain call site: 00099 fprintf
2 105 ndpi_domain_classify_add call site: 00105 ndpi_hash_add_entry
2 130 ndpi_domain_classify_hostname call site: 00130 ndpi_hash_find_entry
2 148 ndpi_domain_classify_hostname call site: 00148 ndpi_hash_find_entry
1 20 ndpi_load_domain_suffixes call site: 00020 ndpi_hash_free
1 23 ndpi_hash_free call site: 00023
1 28 ndpi_hash_init call site: 00028
1 45 ndpi_hash_add_entry call site: 00045 ndpi_list_append
1 51 ndpi_load_domain_suffixes call site: 00051 NDPI_LOG_ERR
1 75 ndpi_get_host_domain_suffix call site: 00075 ndpi_hash_find_entry_extra

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 ndpi_calloc [function] [call site] 00001
2 calloc [function] [call site] 00002
3 nalloc_fail [function] [call site] 00003
4 __sync_fetch_and_add [function] [call site] 00004
4 __sync_fetch_and_sub [function] [call site] 00005
4 nalloc_random_update [function] [call site] 00006
4 nalloc_random_update [function] [call site] 00007
4 nalloc_random_update [function] [call site] 00008
4 nalloc_backtrace_exclude [function] [call site] 00009
5 __sanitizer_print_stack_trace [function] [call site] 00011
4 __sync_fetch_and_sub [function] [call site] 00012
4 __sync_fetch_and_sub [function] [call site] 00013
4 __sync_fetch_and_sub [function] [call site] 00014
3 nalloc_calloc [function] [call site] 00015
1 set_ndpi_debug_function [function] [call site] 00016
2 __ndpi_unused_param [function] [call site] 00017
2 __ndpi_unused_param [function] [call site] 00018
1 ndpi_load_domain_suffixes [function] [call site] 00019
2 ndpi_hash_init [function] [call site] 00027
3 ndpi_calloc [function] [call site] 00028
2 ndpi_hash_add_entry [function] [call site] 00033
3 HASH_FIND [function] [call site] 00034
3 ndpi_list_append [function] [call site] 00035
4 ndpi_malloc [function] [call site] 00036
5 malloc [function] [call site] 00037
6 nalloc_fail [function] [call site] 00038
6 nalloc_malloc [function] [call site] 00039
4 ndpi_free [function] [call site] 00040
3 ndpi_calloc [function] [call site] 00041
3 ndpi_list_init [function] [call site] 00042
3 ndpi_malloc [function] [call site] 00043
3 ndpi_free [function] [call site] 00044
3 ndpi_list_append [function] [call site] 00046
3 HASH_FIND [function] [call site] 00048
3 ndpi_free [function] [call site] 00049
3 ndpi_free [function] [call site] 00050
2 NDPI_LOG_ERR [function] [call site] 00052
2 NDPI_LOG_DBG [function] [call site] 00054
1 fuzz_set_alloc_callbacks_and_seed [function] [call site] 00055
2 fuzz_set_alloc_callbacks [function] [call site] 00056
3 ndpi_set_memory_alloction_functions [function] [call site] 00057
2 fuzz_set_alloc_seed [function] [call site] 00058
1 ndpi_domain_classify_alloc [function] [call site] 00059
2 ndpi_malloc [function] [call site] 00060
2 ndpi_hash_init [function] [call site] 00061
2 ndpi_free [function] [call site] 00062
1 FuzzedDataProvider::ConsumeIntegral [function] [call site] 00063
1 FuzzedDataProvider::ConsumeBytesAsString [function] [call site] 00064
1 FuzzedDataProvider::ConsumeIntegral [function] [call site] 00065
1 FuzzedDataProvider::ConsumeIntegral [function] [call site] 00066
1 ndpi_domain_classify_add [function] [call site] 00067
2 ndpi_encode_domain [function] [call site] 00068
3 ndpi_domain_mapper_init [function] [call site] 00069
3 ndpi_get_host_domain_suffix [function] [call site] 00073
4 ndpi_hash_find_entry [function] [call site] 00075
5 ndpi_hash_find_entry_extra [function] [call site] 00076
6 HASH_FIND [function] [call site] 00077
3 ndpi_compress_str [function] [call site] 00084
4 shoco_compress [function] [call site] 00085
5 find_best_encoding [function] [call site] 00086
6 check_indices [function] [call site] 00087
7 _mm_setzero_si128 [function] [call site] 00088
7 _mm_load_si128 [function] [call site] 00089
7 _mm_load_si128 [function] [call site] 00090
7 _mm_cmpgt_epi16 [function] [call site] 00091
7 _mm_cmpgt_epi16 [function] [call site] 00092
7 _mm_and_si128 [function] [call site] 00093
7 _mm_movemask_epi8 [function] [call site] 00094
2 ndpi_hash_add_entry [function] [call site] 00103
2 ndpi_hash_add_entry [function] [call site] 00104
2 ndpi_hash_add_entry [function] [call site] 00106
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00108
1 std::string::c_str [function] [call site] 00109
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00110
1 ndpi_domain_classify_add_domains [function] [call site] 00111
1 FuzzedDataProvider::ConsumeIntegralInRange [function] [call site] 00117
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00118
1 FuzzedDataProvider::ConsumeIntegral [function] [call site] 00119
1 FuzzedDataProvider::ConsumeBytesAsString [function] [call site] 00120
1 FuzzedDataProvider::ConsumeIntegral [function] [call site] 00121
1 ndpi_domain_classify_hostname [function] [call site] 00122
2 ndpi_encode_domain [function] [call site] 00127
2 ndpi_hash_find_entry [function] [call site] 00128
2 ndpi_hash_find_entry [function] [call site] 00129
2 ndpi_hash_find_entry [function] [call site] 00131
2 ndpi_get_host_domain [function] [call site] 00135
2 ndpi_encode_domain [function] [call site] 00147
2 ndpi_hash_find_entry [function] [call site] 00148
2 ndpi_hash_find_entry [function] [call site] 00149
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00151
1 std::string::c_str [function] [call site] 00152
1 ndpi_domain_classify_hostname [function] [call site] 00153
1 ndpi_domain_classify_size [function] [call site] 00155
1 ndpi_domain_classify_free [function] [call site] 00156
2 ndpi_hash_free [function] [call site] 00157
2 ndpi_free [function] [call site] 00158