Fuzz introspector: db_dump_fuzz_load
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
16 53 7 :

['exit', 'strdup', 'mosquitto_free', 'mosquitto_malloc', 'calloc', 'strlen', 'free']

16 61 dump__client_chunk_process call site: 00261 /src/mosquitto/apps/db_dump/db_dump.c:162
12 12 2 :

['memcmp', 'strlen']

12 19 dump__client_msg_chunk_process call site: 00190 /src/mosquitto/apps/db_dump/db_dump.c:202
10 10 2 :

['memcmp', 'strlen']

10 16 dump__sub_chunk_process call site: 00232 /src/mosquitto/apps/db_dump/db_dump.c:355
8 45 4 :

['exit', 'calloc', 'mosquitto_free', 'mosquitto_malloc']

8 99 dump__base_msg_chunk_process call site: 00144 /src/mosquitto/apps/db_dump/db_dump.c:292
0 0 None 22 819 db_dump_fuzz_main call site: 00011 /src/mosquitto/apps/db_dump/db_dump.c:445
0 0 None 6 196 persist__chunk_client_msg_read_v56 call site: 00171 /src/mosquitto/src/persist_read_v5.c:131
0 0 None 6 26 db_dump_fuzz_main call site: 00272 /src/mosquitto/apps/db_dump/db_dump.c:491
0 0 None 2 183 persist__chunk_base_msg_read_v56 call site: 00067 /src/mosquitto/src/persist_read_v5.c:212
0 0 None 0 179 property__read_all call site: 00071 /src/mosquitto/src/../lib/property_mosq.c:172
0 0 None 0 59 db_dump_fuzz_main call site: 00275 /src/mosquitto/apps/db_dump/db_dump.c:505
0 0 None 0 25 persist__chunk_base_msg_read_v56 call site: 00065 /src/mosquitto/src/persist_read_v5.c:200
0 0 None 0 20 persist__chunk_base_msg_read_v234 call site: 00130 /src/mosquitto/src/persist_read_v234.c:171

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 getpid [call site] 00001
1 fopen [call site] 00002
1 fwrite [call site] 00003
1 fclose [call site] 00004
1 run_db_dump(char*) [function] [call site] 00005
2 strdup [call site] 00006
2 db_dump_fuzz_main [function] [call site] 00007
3 strcmp [call site] 00008
3 strcmp [call site] 00009
3 fprintf [call site] 00010
3 fopen [call site] 00011
3 fprintf [call site] 00012
3 fread [call site] 00013
3 memcmp [call site] 00014
3 printf [call site] 00015
3 fread [call site] 00016
3 printf [call site] 00017
3 fread [call site] 00018
3 ntohl [call site] 00019
3 printf [call site] 00020
3 printf [call site] 00021
3 persist__chunk_header_read [function] [call site] 00022
4 persist__chunk_header_read_v56 [function] [call site] 00023
5 fread [call site] 00024
4 persist__chunk_header_read_v234 [function] [call site] 00025
5 fread [call site] 00026
5 fread [call site] 00027
5 ntohs [call site] 00028
3 dump__cfg_chunk_process [function] [call site] 00029
4 persist__chunk_cfg_read_v56 [function] [call site] 00030
5 fread [call site] 00031
5 __errno_location [call site] 00032
5 log__printf [function] [call site] 00033
4 persist__chunk_cfg_read_v234 [function] [call site] 00034
5 fread [call site] 00035
5 fread [call site] 00036
5 fread [call site] 00037
5 __errno_location [call site] 00038
5 log__printf [function] [call site] 00039
4 fprintf [call site] 00040
4 printf [call site] 00041
4 printf [call site] 00042
4 printf [call site] 00043
4 printf [call site] 00044
4 fprintf [call site] 00045
4 printf [call site] 00046
3 dump__base_msg_chunk_process [function] [call site] 00047
4 persist__chunk_base_msg_read_v56 [function] [call site] 00048
5 fread [call site] 00049
5 ntohl [call site] 00050
5 ntohs [call site] 00051
5 ntohs [call site] 00052
5 ntohs [call site] 00053
5 ntohs [call site] 00054
5 ntohs [call site] 00055
5 persist__read_string_len [function] [call site] 00056
6 mosquitto__malloc [function] [call site] 00057
7 malloc_usable_size [call site] 00058
6 log__printf [function] [call site] 00059
6 fread [call site] 00060
6 mosquitto__free [function] [call site] 00061
7 malloc_usable_size [call site] 00062
5 persist__read_string_len [function] [call site] 00063
5 persist__read_string_len [function] [call site] 00064
5 mosquitto__malloc [function] [call site] 00065
5 fread [call site] 00066
5 mosquitto__malloc [function] [call site] 00067
5 fread [call site] 00068
5 property__read_all [function] [call site] 00069
6 packet__read_varint [function] [call site] 00070
6 mosquitto__calloc [function] [call site] 00071
7 calloc [call site] 00072
7 malloc_usable_size [call site] 00073
6 mosquitto_property_free_all [function] [call site] 00074
7 property__free [function] [call site] 00075
8 mosquitto__free [function] [call site] 00076
8 mosquitto__free [function] [call site] 00077
8 mosquitto__free [function] [call site] 00078
8 mosquitto__free [function] [call site] 00079
6 property__read [function] [call site] 00080
7 packet__read_varint [function] [call site] 00081
7 packet__read_byte [function] [call site] 00082
8 __assert_fail [call site] 00083
7 packet__read_uint16 [function] [call site] 00084
8 __assert_fail [call site] 00085
8 ntohs [call site] 00086
7 packet__read_uint32 [function] [call site] 00087
8 __assert_fail [call site] 00088
8 ntohl [call site] 00089
7 packet__read_varint [function] [call site] 00090
7 packet__read_string [function] [call site] 00091
8 packet__read_binary [function] [call site] 00092
9 __assert_fail [call site] 00093
9 packet__read_uint16 [function] [call site] 00094
9 mosquitto__malloc [function] [call site] 00095
8 mosquitto_validate_utf8 [function] [call site] 00096
8 mosquitto__free [function] [call site] 00097
7 packet__read_binary [function] [call site] 00098
7 packet__read_string [function] [call site] 00099
7 packet__read_string [function] [call site] 00100
7 mosquitto__free [function] [call site] 00101
6 mosquitto__free [function] [call site] 00102
6 mosquitto_property_free_all [function] [call site] 00103
6 mosquitto_property_check_all [function] [call site] 00104
7 mosquitto_property_check_command [function] [call site] 00105
6 mosquitto_property_free_all [function] [call site] 00106
5 mosquitto__free [function] [call site] 00107
5 mosquitto__free [function] [call site] 00108
5 mosquitto__free [function] [call site] 00109
5 mosquitto__free [function] [call site] 00110
5 mosquitto__free [function] [call site] 00111
5 mosquitto__free [function] [call site] 00112
4 persist__chunk_base_msg_read_v234 [function] [call site] 00113
5 fread [call site] 00114
5 persist__read_string [function] [call site] 00115
6 fread [call site] 00116
6 ntohs [call site] 00117
6 persist__read_string_len [function] [call site] 00118
5 persist__read_string [function] [call site] 00119
5 fread [call site] 00120
5 ntohs [call site] 00121
5 fread [call site] 00122
5 ntohs [call site] 00123
5 fread [call site] 00124
5 persist__read_string [function] [call site] 00125
5 fread [call site] 00126
5 fread [call site] 00127
5 fread [call site] 00128
5 ntohl [call site] 00129
5 mosquitto_malloc [function] [call site] 00130
6 mosquitto__malloc [function] [call site] 00131
5 fread [call site] 00132
5 mosquitto__free [function] [call site] 00133
5 mosquitto__free [function] [call site] 00134
5 mosquitto__free [function] [call site] 00135
5 mosquitto__free [function] [call site] 00136
4 fprintf [call site] 00137
4 time [call site] 00138
4 mosquitto__calloc [function] [call site] 00139
4 fprintf [call site] 00140
4 db__message_store [function] [call site] 00141
4 mosquitto_malloc [function] [call site] 00142
4 exit [call site] 00143
4 fprintf [call site] 00144
4 calloc [call site] 00145
4 fprintf [call site] 00146
4 mosquitto_malloc [function] [call site] 00147
4 exit [call site] 00148
4 print__base_msg [function] [call site] 00149
5 printf [call site] 00150
5 printf [call site] 00151
5 printf [call site] 00152
5 printf [call site] 00153
5 printf [call site] 00154
5 printf [call site] 00155
5 printf [call site] 00156
5 printf [call site] 00157
5 printf [call site] 00158
5 mosquitto_validate_utf8 [function] [call site] 00159
5 printf [call site] 00160
5 print__properties [function] [call site] 00161
6 printf [call site] 00162
6 printf [call site] 00163
6 printf [call site] 00164
4 free__base_msg [function] [call site] 00165
5 mosquitto_property_free_all [function] [call site] 00166
3 dump__client_msg_chunk_process [function] [call site] 00167
4 persist__chunk_client_msg_read_v56 [function] [call site] 00168
5 fread [call site] 00169
5 persist__read_string_len [function] [call site] 00170
5 mosquitto__malloc [function] [call site] 00171
5 property__read_all [function] [call site] 00172
5 mosquitto__free [function] [call site] 00173
5 mosquitto__free [function] [call site] 00174
5 mosquitto_property_identifier [function] [call site] 00175
5 mosquitto_property_varint_value [function] [call site] 00176
5 mosquitto_property_next [function] [call site] 00177
5 mosquitto_property_free_all [function] [call site] 00178
5 mosquitto__free [function] [call site] 00179
5 mosquitto__free [function] [call site] 00180
5 log__printf [function] [call site] 00181
4 persist__chunk_client_msg_read_v234 [function] [call site] 00182
5 persist__read_string [function] [call site] 00183
5 fread [call site] 00184
5 fread [call site] 00185
5 fread [call site] 00186
5 __errno_location [call site] 00187
5 log__printf [function] [call site] 00188
5 mosquitto__free [function] [call site] 00189
4 fprintf [call site] 00190
4 strlen [call site] 00191
4 memcmp [call site] 00192
4 print__client_msg [function] [call site] 00193
5 printf [call site] 00194
5 printf [call site] 00195
5 printf [call site] 00196
5 printf [call site] 00197
5 printf [call site] 00198
5 printf [call site] 00199
5 printf [call site] 00200
5 printf [call site] 00201
5 printf [call site] 00202
5 printf [call site] 00203
4 free__client_msg [function] [call site] 00204
3 dump__retain_chunk_process [function] [call site] 00205
4 printf [call site] 00206
4 printf [call site] 00207
4 persist__chunk_retain_read_v56 [function] [call site] 00208
5 fread [call site] 00209
5 __errno_location [call site] 00210
5 log__printf [function] [call site] 00211
4 persist__chunk_retain_read_v234 [function] [call site] 00212
5 fread [call site] 00213
5 __errno_location [call site] 00214
5 log__printf [function] [call site] 00215
4 fprintf [call site] 00216
4 printf [call site] 00217
3 dump__sub_chunk_process [function] [call site] 00218
4 persist__chunk_sub_read_v56 [function] [call site] 00219
5 fread [call site] 00220
5 ntohl [call site] 00221
5 ntohs [call site] 00222
5 ntohs [call site] 00223
5 persist__read_string_len [function] [call site] 00224
5 persist__read_string_len [function] [call site] 00225
5 mosquitto__free [function] [call site] 00226
4 persist__chunk_sub_read_v234 [function] [call site] 00227
5 persist__read_string [function] [call site] 00228
5 persist__read_string [function] [call site] 00229
5 fread [call site] 00230
5 mosquitto__free [function] [call site] 00231
4 fprintf [call site] 00232
4 strlen [call site] 00233
4 print__sub [function] [call site] 00234
5 printf [call site] 00235
5 printf [call site] 00236
5 printf [call site] 00237
5 printf [call site] 00238
5 printf [call site] 00239
5 printf [call site] 00240
4 free__sub [function] [call site] 00241
3 dump__client_chunk_process [function] [call site] 00242
4 persist__chunk_client_read_v56 [function] [call site] 00243
5 fread [call site] 00244
5 ntohs [call site] 00245
5 ntohs [call site] 00246
5 ntohl [call site] 00247
5 ntohs [call site] 00248
5 ntohs [call site] 00249
5 persist__read_string_len [function] [call site] 00250
5 persist__read_string_len [function] [call site] 00251
5 mosquitto__free [function] [call site] 00252
5 log__printf [function] [call site] 00253
4 persist__chunk_client_read_v234 [function] [call site] 00254
5 persist__read_string [function] [call site] 00255
5 fread [call site] 00256
5 ntohs [call site] 00257
5 fread [call site] 00258
5 log__printf [function] [call site] 00259
5 mosquitto__free [function] [call site] 00260
4 fprintf [call site] 00261
4 fprintf [call site] 00262
4 strdup [call site] 00263
4 strlen [call site] 00264
4 print__client [function] [call site] 00265
5 printf [call site] 00266
5 printf [call site] 00267
5 printf [call site] 00268
5 printf [call site] 00269
4 free__client [function] [call site] 00270
3 ftell [call site] 00271
3 fseek [call site] 00272
3 __errno_location [call site] 00273
3 fprintf [call site] 00274
3 fclose [call site] 00275
3 printf [call site] 00276
3 printf [call site] 00277
3 printf [call site] 00278
3 printf [call site] 00279
3 printf [call site] 00280
3 printf [call site] 00281
3 report_client_stats [function] [call site] 00282
4 printf [call site] 00283
4 printf [call site] 00284
3 cleanup_client_stats [function] [call site] 00285
4 mosquitto_free [function] [call site] 00286
5 mosquitto__free [function] [call site] 00287
4 mosquitto_free [function] [call site] 00288
3 cleanup_msg_store [function] [call site] 00289
4 mosquitto_free [function] [call site] 00290
3 cleanup_msg_store [function] [call site] 00291
3 fclose [call site] 00292
1 unlink [call site] 00293