Fuzz introspector: fuzz_headers_parse_request
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
56 68 soup_message_headers_append_common call site: 00068 parse_content_foo
32 143 soup_message_headers_get_list_common call site: 00143 soup_message_headers_remove
4 55 soup_message_headers_append_common call site: 00055 soup_message_headers_get_one_common
2 52 soup_message_headers_get_one_common call site: 00052 find_last_uncommon_header
2 65 soup_message_headers_append_common call site: 00065
2 140 soup_message_headers_get_list_common call site: 00140
1 39 is_valid_header_name call site: 00039
1 61 is_valid_header_value call site: 00061
1 125 soup_message_headers_append_internal call site: 00125
1 130 soup_message_headers_append_internal call site: 00130

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 fuzz_set_logging_func [function] [call site] 00001
2 g_log_set_writer_func [function] [call site] 00002
1 soup_message_headers_new [function] [call site] 00003
2 g_atomic_rc_box_new0 [function] [call site] 00004
1 soup_headers_parse_request [function] [call site] 00005
2 g_return_val_if_fail [function] [call site] 00006
2 g_ascii_isdigit [function] [call site] 00008
2 g_ascii_isdigit [function] [call site] 00010
2 soup_headers_parse [function] [call site] 00013
3 g_return_val_if_fail [function] [call site] 00014
3 g_return_val_if_fail [function] [call site] 00015
3 soup_message_headers_append_untrusted_data [function] [call site] 00031
4 g_utf8_make_valid [function] [call site] 00032
4 g_utf8_make_valid [function] [call site] 00033
4 soup_message_headers_append_internal [function] [call site] 00034
5 g_return_val_if_fail [function] [call site] 00035
5 g_return_val_if_fail [function] [call site] 00036
5 g_return_val_if_fail [function] [call site] 00037
5 is_valid_header_name [function] [call site] 00038
5 g_warning [function] [call site] 00040
5 soup_header_name_from_string [function] [call site] 00041
6 soup_header_name_find [function] [call site] 00042
7 soup_header_name_hash_function [function] [call site] 00043
7 gperf_case_strncmp [function] [call site] 00044
5 soup_message_headers_append_common [function] [call site] 00046
6 soup_message_headers_get_one [function] [call site] 00047
7 g_return_val_if_fail [function] [call site] 00048
7 g_return_val_if_fail [function] [call site] 00049
7 soup_header_name_from_string [function] [call site] 00050
7 soup_message_headers_get_one_common [function] [call site] 00051
8 find_last_common_header [function] [call site] 00052
7 find_last_uncommon_header [function] [call site] 00053
8 g_ascii_strcasecmp [function] [call site] 00054
6 g_warning [function] [call site] 00055
6 soup_message_headers_get_one_common [function] [call site] 00056
6 g_ascii_strtoull [function] [call site] 00057
6 g_ascii_strtoull [function] [call site] 00058
6 is_valid_header_value [function] [call site] 00060
6 g_warning [function] [call site] 00062
6 g_array_sized_new [function] [call site] 00063
6 g_array_append_val [function] [call site] 00065
6 g_hash_table_remove [function] [call site] 00066
6 GUINT_TO_POINTER [function] [call site] 00067
6 soup_message_headers_set [function] [call site] 00068
7 g_clear_pointer [function] [call site] 00069
7 parse_content_foo [function] [call site] 00070
8 soup_message_headers_get_one_common [function] [call site] 00071
8 g_ascii_isspace [function] [call site] 00076
8 soup_header_parse_semi_param_list [function] [call site] 00077
9 g_return_val_if_fail [function] [call site] 00078
9 parse_param_list [function] [call site] 00079
10 g_hash_table_new_full [function] [call site] 00080
10 parse_list [function] [call site] 00081
11 skip_delims [function] [call site] 00082
12 g_ascii_isspace [function] [call site] 00083
11 skip_item [function] [call site] 00084
12 unskip_lws [function] [call site] 00085
13 g_ascii_isspace [function] [call site] 00086
11 g_slist_prepend [function] [call site] 00087
11 g_strndup [function] [call site] 00088
11 skip_delims [function] [call site] 00089
11 g_slist_reverse [function] [call site] 00090
10 unskip_lws [function] [call site] 00092
10 g_string_new [function] [call site] 00094
10 skip_lws [function] [call site] 00095
11 g_ascii_isspace [function] [call site] 00096
10 decode_rfc5987_inplace [function] [call site] 00097
11 g_ascii_strncasecmp [function] [call site] 00099
11 g_ascii_strncasecmp [function] [call site] 00100
11 g_uri_unescape_string [function] [call site] 00102
11 g_convert_with_fallback [function] [call site] 00103
11 g_string_assign [function] [call site] 00105
10 g_string_free [function] [call site] 00107
10 decode_quoted_string_inplace [function] [call site] 00109
10 g_hash_table_lookup_extended [function] [call site] 00110
10 g_clear_pointer [function] [call site] 00111
10 g_slist_foreach [function] [call site] 00112
10 g_string_free [function] [call site] 00113
10 g_hash_table_replace [function] [call site] 00114
10 g_string_free [function] [call site] 00115
10 g_string_free [function] [call site] 00116
10 g_slist_free [function] [call site] 00118
8 soup_header_parse_semi_param_list [function] [call site] 00119
7 g_ascii_strcasecmp [function] [call site] 00124
5 is_valid_header_value [function] [call site] 00125
5 g_warning [function] [call site] 00126
5 g_array_sized_new [function] [call site] 00127
5 g_array_append_val [function] [call site] 00130
5 g_hash_table_remove [function] [call site] 00131
2 soup_message_headers_get_expectations [function] [call site] 00135
3 g_return_val_if_fail [function] [call site] 00136
2 soup_message_headers_clean_connection_headers [function] [call site] 00137
3 g_return_if_fail [function] [call site] 00138
3 soup_message_headers_get_list_common [function] [call site] 00139
4 g_return_val_if_fail [function] [call site] 00140
4 g_hash_table_lookup [function] [call site] 00141
4 GUINT_TO_POINTER [function] [call site] 00142
4 find_common_header [function] [call site] 00143
4 find_common_header [function] [call site] 00144
4 g_string_new [function] [call site] 00145
4 find_common_header [function] [call site] 00146
4 g_string_append [function] [call site] 00147
4 g_string_append [function] [call site] 00148
4 g_string_free [function] [call site] 00149
4 g_hash_table_new_full [function] [call site] 00150
4 g_hash_table_insert [function] [call site] 00151
4 GUINT_TO_POINTER [function] [call site] 00152
3 soup_header_parse_list [function] [call site] 00153
4 g_return_val_if_fail [function] [call site] 00154
4 parse_list [function] [call site] 00155
3 soup_message_headers_remove [function] [call site] 00156
4 g_return_if_fail [function] [call site] 00157
4 g_return_if_fail [function] [call site] 00158
4 soup_header_name_from_string [function] [call site] 00159
4 soup_message_headers_remove_common [function] [call site] 00160
5 g_return_if_fail [function] [call site] 00161
5 find_common_header [function] [call site] 00162
5 g_array_remove_index [function] [call site] 00164
5 g_hash_table_remove [function] [call site] 00165
5 GUINT_TO_POINTER [function] [call site] 00166
5 soup_message_headers_set [function] [call site] 00167
4 find_uncommon_header [function] [call site] 00168
5 g_ascii_strcasecmp [function] [call site] 00169
4 g_array_remove_index [function] [call site] 00172
4 g_hash_table_remove [function] [call site] 00173
3 soup_header_free_list [function] [call site] 00174
4 g_slist_free_full [function] [call site] 00175
2 g_strndup [function] [call site] 00176
2 g_strndup [function] [call site] 00177
1 soup_message_headers_unref [function] [call site] 00178
2 g_atomic_rc_box_release_full [function] [call site] 00179