Fuzz introspector: flb-it-fuzz-flb_json_fuzzer_OSSFUZZ
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
65 65 2 :

['flb_pipe_write_all', 'perror']

65 65 flb_log_print call site: 00019 /src/fluent-bit/src/flb_log.c:647
7 7 2 :

['flb_mp_count', 'msgpack_pack_array']

7 779 flb_pack_msgpack_to_json_format call site: 00136 /src/fluent-bit/src/flb_pack.c:926
2 2 1 :

['flb_worker_log_level']

2 2 flb_log_check call site: 00009 /src/fluent-bit/include/fluent-bit/flb_log.h:105
0 186 1 :

['flb_msgpack_raw_to_json_sds']

0 193 flb_pack_msgpack_to_json_format call site: 00189 /src/fluent-bit/src/flb_pack.c:1084
0 2 1 :

['octal_digit']

2 4 u8_read_escape_sequence call site: 00045 /src/fluent-bit/src/flb_unescape.c:91
0 0 None 61 290 flb_msgpack_raw_to_json_sds call site: 00165 /src/fluent-bit/src/flb_pack.c:757
0 0 None 61 217 flb_msgpack_to_json_str call site: 00066 /src/fluent-bit/src/flb_pack.c:1126
0 0 None 61 67 flb_pack_state_init call site: 00004 /src/fluent-bit/src/flb_pack.c:312
0 0 None 61 66 flb_msgpack_raw_to_json_sds call site: 00170 /src/fluent-bit/src/flb_pack.c:775
0 0 None 61 65 flb_json_tokenise call site: 00034 /src/fluent-bit/src/flb_pack.c:72
0 0 None 61 61 flb_msgpack_to_json_str call site: 00121 /src/fluent-bit/src/flb_pack.c:1137
0 0 None 7 779 flb_pack_msgpack_to_json_format call site: 00133 /src/fluent-bit/src/flb_pack.c:906

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 flb_pack_json [function] [call site] 00001
2 pack_json_to_msgpack [function] [call site] 00002
3 flb_pack_state_init [function] [call site] 00003
4 flb_malloc [function] [call site] 00004
5 flb_fuzz_get_probability [function] [call site] 00005
4 __errno_location [call site] 00006
4 flb_errno_print [function] [call site] 00007
5 __xpg_strerror_r [call site] 00008
5 flb_log_check [function] [call site] 00009
6 flb_worker_log_level [function] [call site] 00010
5 flb_log_print [function] [call site] 00011
6 flb_log_construct [function] [call site] 00012
7 isatty [call site] 00013
7 time [call site] 00014
7 localtime_r [call site] 00015
7 snprintf [call site] 00016
7 vsnprintf [call site] 00017
7 strlen [call site] 00018
6 flb_worker_get [function] [call site] 00019
6 flb_pipe_write_all [function] [call site] 00020
7 write [call site] 00021
7 __errno_location [call site] 00022
7 flb_time_msleep [function] [call site] 00023
8 nanosleep [call site] 00024
7 __errno_location [call site] 00025
7 flb_errno_print [function] [call site] 00026
6 fprintf [call site] 00027
6 perror [call site] 00028
6 fprintf [call site] 00029
4 flb_malloc [function] [call site] 00030
4 __errno_location [call site] 00031
4 flb_errno_print [function] [call site] 00032
3 flb_json_tokenise [function] [call site] 00034
4 __errno_location [call site] 00035
4 flb_errno_print [function] [call site] 00036
3 tokens_to_msgpack [function] [call site] 00037
4 pack_string_token [function] [call site] 00038
5 flb_realloc [function] [call site] 00039
6 realloc [call site] 00040
5 __errno_location [call site] 00041
5 flb_errno_print [function] [call site] 00042
5 flb_unescape_string_utf8 [function] [call site] 00043
6 u8_read_escape_sequence [function] [call site] 00044
7 octal_digit [function] [call site] 00045
7 octal_digit [function] [call site] 00046
7 strtol [call site] 00047
7 hex_digit [function] [call site] 00048
7 strtol [call site] 00049
7 hex_digit [function] [call site] 00050
7 strtol [call site] 00051
7 hex_digit [function] [call site] 00052
7 strtol [call site] 00053
6 u8_wc_toutf8 [function] [call site] 00054
6 flb_log_check [function] [call site] 00055
6 flb_log_print [function] [call site] 00056
6 flb_log_check [function] [call site] 00057
6 flb_log_print [function] [call site] 00058
4 atof [call site] 00060
4 atoll [call site] 00061
3 flb_pack_state_reset [function] [call site] 00062
1 flb_msgpack_to_json_str [function] [call site] 00065
2 flb_malloc [function] [call site] 00066
2 __errno_location [call site] 00067
2 flb_errno_print [function] [call site] 00068
2 flb_msgpack_to_json [function] [call site] 00069
3 msgpack2json [function] [call site] 00070
4 try_to_write [function] [call site] 00071
5 strlen [call site] 00072
4 try_to_write [function] [call site] 00073
4 snprintf [call site] 00074
4 try_to_write [function] [call site] 00075
4 snprintf [call site] 00076
4 try_to_write [function] [call site] 00077
4 snprintf [call site] 00078
4 snprintf [call site] 00079
4 snprintf [call site] 00080
4 try_to_write [function] [call site] 00081
4 try_to_write [function] [call site] 00082
4 flb_utils_write_str [function] [call site] 00083
5 snprintf [call site] 00084
5 encoded_to_buf [function] [call site] 00085
5 flb_utf8_len [function] [call site] 00086
5 flb_utf8_decode [function] [call site] 00087
5 flb_log_check [function] [call site] 00088
5 flb_log_print [function] [call site] 00089
5 snprintf [call site] 00090
5 encoded_to_buf [function] [call site] 00091
5 flb_utf8_len [function] [call site] 00092
5 flb_log_check [function] [call site] 00093
5 flb_log_print [function] [call site] 00094
5 flb_log_check [function] [call site] 00095
5 flb_log_print [function] [call site] 00096
5 encoded_to_buf [function] [call site] 00097
4 try_to_write [function] [call site] 00098
4 try_to_write [function] [call site] 00099
4 flb_utils_write_str [function] [call site] 00100
4 try_to_write [function] [call site] 00101
4 try_to_write [function] [call site] 00102
4 snprintf [call site] 00103
4 try_to_write [function] [call site] 00104
4 try_to_write [function] [call site] 00105
4 try_to_write [function] [call site] 00106
4 msgpack2json [function] [call site] 00107
5 try_to_write [function] [call site] 00108
5 msgpack2json [function] [call site] 00109
6 try_to_write [function] [call site] 00110
6 try_to_write [function] [call site] 00111
6 key_exists_in_map [function] [call site] 00112
7 memcmp [call site] 00113
6 try_to_write [function] [call site] 00114
6 msgpack2json [function] [call site] 00115
7 try_to_write [function] [call site] 00116
7 msgpack2json [function] [call site] 00117
8 try_to_write [function] [call site] 00118
8 flb_log_check [function] [call site] 00119
8 flb_log_print [function] [call site] 00120
2 flb_realloc [function] [call site] 00121
2 __errno_location [call site] 00123
2 flb_errno_print [function] [call site] 00124
1 flb_sds_create [function] [call site] 00126
2 flb_sds_create_len [function] [call site] 00127
3 sds_alloc [function] [call site] 00128
4 flb_malloc [function] [call site] 00129
4 __errno_location [call site] 00130
4 flb_errno_print [function] [call site] 00131
1 flb_pack_msgpack_to_json_format [function] [call site] 00132
2 flb_sds_create_size [function] [call site] 00133
3 sds_alloc [function] [call site] 00134
2 __errno_location [call site] 00135
2 flb_errno_print [function] [call site] 00136
2 flb_mp_count [function] [call site] 00137
3 flb_mp_count_remaining [function] [call site] 00138
2 flb_time_pop_from_msgpack [function] [call site] 00139
3 flb_time_msgpack_to_time [function] [call site] 00140
4 is_eventtime [function] [call site] 00141
4 flb_log_check [function] [call site] 00142
4 flb_log_print [function] [call site] 00143
4 ntohl [call site] 00144
4 ntohl [call site] 00145
4 flb_log_check [function] [call site] 00146
4 flb_log_print [function] [call site] 00147
2 flb_sds_len [function] [call site] 00148
2 flb_sds_len [function] [call site] 00149
2 flb_time_to_double [function] [call site] 00150
2 msgpack_pack_formatted_datetime [function] [call site] 00151
3 gmtime_r [call site] 00152
3 strftime [call site] 00153
3 flb_log_check [function] [call site] 00154
3 flb_log_print [function] [call site] 00155
3 snprintf [call site] 00156
3 flb_log_check [function] [call site] 00157
3 flb_log_print [function] [call site] 00158
2 flb_sds_destroy [function] [call site] 00159
2 msgpack_pack_formatted_datetime [function] [call site] 00161
2 flb_sds_destroy [function] [call site] 00162
2 flb_time_to_millisec [function] [call site] 00163
2 flb_msgpack_raw_to_json_sds [function] [call site] 00164
3 flb_sds_create_size [function] [call site] 00165
3 __errno_location [call site] 00166
3 flb_errno_print [function] [call site] 00167
3 flb_sds_destroy [function] [call site] 00168
3 flb_msgpack_to_json [function] [call site] 00169
3 flb_sds_increase [function] [call site] 00170
4 flb_sds_alloc [function] [call site] 00171
4 flb_realloc [function] [call site] 00172
4 __errno_location [call site] 00173
4 flb_errno_print [function] [call site] 00174
3 __errno_location [call site] 00175
3 flb_errno_print [function] [call site] 00176
3 flb_sds_destroy [function] [call site] 00177
3 flb_sds_len_set [function] [call site] 00178
2 flb_sds_destroy [function] [call site] 00179
2 flb_sds_len [function] [call site] 00180
2 flb_sds_cat [function] [call site] 00181
3 flb_sds_avail [function] [call site] 00182
3 flb_sds_increase [function] [call site] 00183
3 flb_sds_len [function] [call site] 00184
2 flb_sds_destroy [function] [call site] 00185
2 flb_sds_destroy [function] [call site] 00186
2 flb_sds_destroy [function] [call site] 00187
2 flb_sds_cat [function] [call site] 00188
2 flb_sds_destroy [function] [call site] 00189
2 flb_msgpack_raw_to_json_sds [function] [call site] 00190
2 flb_sds_len [function] [call site] 00191
2 flb_sds_destroy [function] [call site] 00192
1 flb_sds_destroy [function] [call site] 00193
1 flb_pack_msgpack_to_json_format [function] [call site] 00194
1 flb_sds_destroy [function] [call site] 00195
1 flb_sds_destroy [function] [call site] 00196