Fuzz introspector: fuzz_ds_ahocorasick
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
14 37 ndpi_strdup call site: 00037 malloc
2 65 xmemchr call site: 00065 DETECTNULL
2 195 ac_automata_release call site: 00195 acho_free
1 9 ac_automata_init call site: 00009
1 13 ac_automata_init call site: 00013
1 16 LLVMFuzzerTestOneInput call site: 00016 ac_automata_init
1 70 xmemchr call site: 00070
1 101 node_resize_mp call site: 00101
1 108 LLVMFuzzerTestOneInput call site: 00108
1 124 ac_automata_walk call site: 00124
1 136 LLVMFuzzerTestOneInput call site: 00136 printf
1 141 node_findbs_next call site: 00141 node_findbs_next

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 FuzzedDataProvider::remaining_bytes [function] [call site] 00001
1 fuzz_set_alloc_callbacks_and_seed [function] [call site] 00002
2 fuzz_set_alloc_callbacks [function] [call site] 00003
3 ndpi_set_memory_alloction_functions [function] [call site] 00004
2 fuzz_set_alloc_seed [function] [call site] 00005
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00006
1 ac_automata_enable_debug [function] [call site] 00007
1 ac_automata_init [function] [call site] 00008
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00015
1 ndpi_init_automa [function] [call site] 00016
2 ac_automata_init [function] [call site] 00017
1 ndpi_init_automa_domain [function] [call site] 00018
2 ac_automata_init [function] [call site] 00019
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00020
1 ac_automata_feature [function] [call site] 00021
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00022
1 ac_automata_feature [function] [call site] 00023
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00024
1 ac_automata_feature [function] [call site] 00025
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00026
1 ac_automata_name [function] [call site] 00027
1 FuzzedDataProvider::ConsumeRandomLengthString [function] [call site] 00029
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00030
1 FuzzedDataProvider::ConsumeIntegral [function] [call site] 00031
1 FuzzedDataProvider::ConsumeRandomLengthString [function] [call site] 00032
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00033
1 ndpi_strdup [function] [call site] 00035
2 ndpi_malloc [function] [call site] 00037
3 malloc [function] [call site] 00038
4 nalloc_fail [function] [call site] 00039
5 __sync_fetch_and_add [function] [call site] 00040
5 __sync_fetch_and_sub [function] [call site] 00041
5 nalloc_random_update [function] [call site] 00042
5 nalloc_random_update [function] [call site] 00043
5 nalloc_random_update [function] [call site] 00044
5 nalloc_backtrace_exclude [function] [call site] 00045
6 __sanitizer_print_stack_trace [function] [call site] 00047
5 __sync_fetch_and_sub [function] [call site] 00048
5 __sync_fetch_and_sub [function] [call site] 00049
5 __sync_fetch_and_sub [function] [call site] 00050
4 nalloc_malloc [function] [call site] 00051
1 std::string::c_str [function] [call site] 00053
1 FuzzedDataProvider::ConsumeIntegral [function] [call site] 00055
1 FuzzedDataProvider::ConsumeIntegralInRange [function] [call site] 00056
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00057
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00058
1 ac_automata_add [function] [call site] 00061
2 node_create_next [function] [call site] 00072
3 node_find_next [function] [call site] 00073
3 node_create [function] [call site] 00074
3 node_register_outgoing [function] [call site] 00075
4 node_resize_outgoing [function] [call site] 00076
5 acho_calloc [function] [call site] 00077
5 edge_data_size [function] [call site] 00078
5 edge_data_size [function] [call site] 00079
5 acho_calloc [function] [call site] 00080
5 edge_get_alpha [function] [call site] 00083
5 edge_get_alpha [function] [call site] 00084
5 acho_free [function] [call site] 00085
4 edge_get_alpha [function] [call site] 00086
4 node_resize_outgoing [function] [call site] 00087
4 edge_get_alpha [function] [call site] 00088
3 node_release [function] [call site] 00089
4 node_release_pattern [function] [call site] 00090
5 acho_free [function] [call site] 00091
4 acho_free [function] [call site] 00092
4 acho_free [function] [call site] 00093
4 acho_free [function] [call site] 00094
2 node_register_matchstr [function] [call site] 00095
3 node_has_matchstr [function] [call site] 00096
3 node_resize_mp [function] [call site] 00098
4 acho_calloc [function] [call site] 00099
4 mp_data_size [function] [call site] 00100
4 mp_data_size [function] [call site] 00103
4 mp_data_size [function] [call site] 00105
4 acho_free [function] [call site] 00106
3 node_resize_mp [function] [call site] 00107
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00110
1 ndpi_strdup [function] [call site] 00111
1 ndpi_strdup [function] [call site] 00112
1 std::string::c_str [function] [call site] 00113
1 ndpi_add_string_to_automa [function] [call site] 00114
2 ndpi_add_string_value_to_automa [function] [call site] 00115
1 ndpi_free [function] [call site] 00119
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00120
1 ac_automata_finalize [function] [call site] 00121
2 ac_automata_traverse_setfailure [function] [call site] 00122
3 ac_automata_walk [function] [call site] 00123
2 ac_automata_walk [function] [call site] 00128
1 ndpi_finalize_automa [function] [call site] 00129
2 ac_automata_finalize [function] [call site] 00130
1 FuzzedDataProvider::ConsumeIntegral [function] [call site] 00131
1 FuzzedDataProvider::ConsumeRandomLengthString [function] [call site] 00132
1 ndpi_strdup [function] [call site] 00133
1 std::string::c_str [function] [call site] 00134
1 ac_automata_search [function] [call site] 00136
2 node_findbs_next_ac [function] [call site] 00139
3 node_findbs_next [function] [call site] 00140
3 node_findbs_next [function] [call site] 00142
2 ac_automata_exact_match [function] [call site] 00143
2 ac_domain_match_handler [function] [call site] 00147
3 MATCH_DEBUG_INFO [function] [call site] 00148
3 MATCH_DEBUG_INFO [function] [call site] 00149
3 ndpi_is_middle_string_char [function] [call site] 00150
3 MATCH_DEBUG_INFO [function] [call site] 00151
3 MATCH_DEBUG_INFO [function] [call site] 00152
3 ndpi_is_middle_string_char [function] [call site] 00153
3 MATCH_DEBUG_INFO [function] [call site] 00154
1 ndpi_free [function] [call site] 00156
1 ndpi_match_string [function] [call site] 00157
2 ndpi_match_string_common [function] [call site] 00158
3 ac_automata_search [function] [call site] 00160
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00162
1 std::string::c_str [function] [call site] 00163
1 ndpi_match_string_value [function] [call site] 00164
2 ndpi_match_string_common [function] [call site] 00165
1 FuzzedDataProvider::ConsumeBool [function] [call site] 00166
1 std::string::c_str [function] [call site] 00167
1 std::string::c_str [function] [call site] 00169
1 ndpi_match_string_protocol_id [function] [call site] 00170
2 ndpi_match_string_common [function] [call site] 00171
1 std::string::c_str [function] [call site] 00172
1 std::string::c_str [function] [call site] 00174
1 ac_automata_search [function] [call site] 00176
1 ndpi_match_string [function] [call site] 00177
1 ndpi_match_string_value [function] [call site] 00178
1 ndpi_match_string_protocol_id [function] [call site] 00180
1 ndpi_free [function] [call site] 00182
1 ac_automata_dump [function] [call site] 00183
1 ac_automata_get_stats [function] [call site] 00191
1 ac_automata_release [function] [call site] 00192
2 ac_automata_walk [function] [call site] 00193
2 node_release [function] [call site] 00194
2 acho_free [function] [call site] 00195
2 acho_free [function] [call site] 00196
2 acho_free [function] [call site] 00197
1 ndpi_free_automa [function] [call site] 00198
2 ac_automata_release [function] [call site] 00199