Fuzz introspector: ext2fs_check_directory_fuzzer
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
662 662 26 :

['ext2fs_mark_super_dirty', 'ext2fs_div64_ceil', 'ext2fs_init_csum_seed', 'ext2fs_has_feature_journal_dev.520', 'ext2fs_has_feature_bigalloc', 'ext2fs_has_feature_meta_bg.523', 'ext2fs_has_feature_casefold', 'ext2fs_load_nls_table', 'ext2fs_blocks_count', 'ext2fs_group_desc_csum_set', 'ext2fs_verify_csum_type', 'ext2fs_bg_itable_unused_set', 'ext2fs_has_feature_mmp.518', 'ext2fs_bg_flags_clear', 'ext2fs_div_ceil', 'ext2fs_get_array', 'ext2fs_superblock_csum_verify', 'ext2fs_mmp_start', 'ext2fs_set_feature_shared_blocks', 'ext2fs_hashmap_create', 'io_channel_read_blk64', 'ext2fs_mmp_stop', 'ext2fs_has_feature_64bit.522', 'ext2fs_has_group_desc_csum.519', 'ext2fs_descriptor_block_loc2', 'io_channel_cache_readahead']

662 767 ext2fs_open2 call site: 00023 /src/e2fsprogs/lib/ext2fs/openfs.c:230
100 207 6 :

['ext2fs_free_mem', 'mutex_lock', 'mutex_unlock', 'find_cached_block', 'io_channel_alloc_buf', 'reuse_cache']

100 266 unix_read_blk64 call site: 00000 /src/e2fsprogs/lib/ext2fs/unix_io.c:1047
31 31 1 :

['ext2fs_free_block_bitmap']

92 128 ext2fs_free call site: 00148 /src/e2fsprogs/lib/ext2fs/freefs.c:41
31 31 1 :

['ext2fs_free_inode_bitmap']

61 97 ext2fs_free call site: 00149 /src/e2fsprogs/lib/ext2fs/freefs.c:43
14 27 5 :

['pthread_mutex_destroy', 'free_cache', 'ext2fs_free_mem', 'pthread_mutex_init', 'close']

14 27 unix_open_channel call site: 00000 /src/e2fsprogs/lib/ext2fs/unix_io.c:871
9 9 1 :

['ext2fs_get_dio_alignment']

35 85 unix_open_channel call site: 00000 /src/e2fsprogs/lib/ext2fs/unix_io.c:771
9 9 1 :

['ext2fs_free_dblist']

22 56 ext2fs_free call site: 00165 /src/e2fsprogs/lib/ext2fs/freefs.c:52
8 8 1 :

['ext2fs_badblocks_list_free']

30 64 ext2fs_free call site: 00164 /src/e2fsprogs/lib/ext2fs/freefs.c:48
8 8 1 :

['ext2fs_free_inode_cache']

13 47 ext2fs_free call site: 00169 /src/e2fsprogs/lib/ext2fs/freefs.c:55
6 6 2 :

['setrlimit64', 'getrlimit64']

20 33 unix_open_channel call site: 00000 /src/e2fsprogs/lib/ext2fs/unix_io.c:850
6 6 1 :

['pthread_mutex_destroy']

6 12 unix_close call site: 00000 /src/e2fsprogs/lib/ext2fs/unix_io.c:982
6 6 1 :

['ext2fs_get_memalign']

6 6 io_channel_alloc_buf call site: 00018 /src/e2fsprogs/lib/ext2fs/io_manager.c:137

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 open [call site] 00001
1 write [call site] 00002
1 close [call site] 00003
1 ext2fs_open [function] [call site] 00004
2 ext2fs_open2 [function] [call site] 00005
3 ext2fs_get_mem [function] [call site] 00006
3 getenv [call site] 00007
3 strtoul [call site] 00008
3 strlen [call site] 00009
3 ext2fs_get_mem [function] [call site] 00010
3 strcpy [call site] 00011
3 strchr [call site] 00012
3 io_channel_set_options [function] [call site] 00013
4 strlen [call site] 00014
4 strcpy [call site] 00015
4 strchr [call site] 00016
4 strchr [call site] 00017
3 io_channel_alloc_buf [function] [call site] 00018
4 ext2fs_get_memalign [function] [call site] 00019
5 posix_memalign [call site] 00020
4 ext2fs_get_mem [function] [call site] 00021
3 ext2fs_get_mem [function] [call site] 00022
3 ext2fs_get_mem [function] [call site] 00023
3 ext2fs_verify_csum_type [function] [call site] 00024
4 ext2fs_has_feature_metadata_csum [function] [call site] 00025
3 ext2fs_superblock_csum_verify [function] [call site] 00026
4 ext2fs_superblock_csum [function] [call site] 00027
5 ext2fs_crc32c_le [function] [call site] 00028
6 crc32_le_generic [function] [call site] 00029
7 crc32_body [function] [call site] 00030
3 ext2fs_has_feature_journal_dev [function] [call site] 00031
3 ext2fs_has_feature_bigalloc [function] [call site] 00032
3 ext2fs_has_feature_bigalloc [function] [call site] 00033
3 ext2fs_has_feature_64bit [function] [call site] 00034
3 ext2fs_has_feature_journal_dev [function] [call site] 00035
3 ext2fs_init_csum_seed [function] [call site] 00036
4 ext2fs_has_feature_csum_seed [function] [call site] 00037
4 ext2fs_has_feature_metadata_csum [function] [call site] 00038
4 ext2fs_has_feature_ea_inode [function] [call site] 00039
4 ext2fs_crc32c_le [function] [call site] 00040
3 ext2fs_has_feature_64bit [function] [call site] 00041
3 ext2fs_blocks_count [function] [call site] 00042
4 ext2fs_has_feature_64bit [function] [call site] 00043
3 ext2fs_blocks_count [function] [call site] 00044
3 ext2fs_div64_ceil [function] [call site] 00045
3 ext2fs_has_feature_64bit [function] [call site] 00046
3 ext2fs_div_ceil [function] [call site] 00047
3 ext2fs_has_feature_meta_bg [function] [call site] 00048
3 ext2fs_get_array [function] [call site] 00049
4 ext2fs_get_mem [function] [call site] 00050
3 ext2fs_has_feature_meta_bg [function] [call site] 00051
3 ext2fs_descriptor_block_loc2 [function] [call site] 00052
4 ext2fs_has_feature_meta_bg [function] [call site] 00053
4 ext2fs_has_feature_64bit [function] [call site] 00054
4 ext2fs_bg_has_super [function] [call site] 00055
5 ext2fs_has_feature_sparse_super2 [function] [call site] 00056
5 ext2fs_has_feature_sparse_super [function] [call site] 00057
5 test_root [function] [call site] 00058
5 test_root [function] [call site] 00059
4 ext2fs_group_first_block2 [function] [call site] 00060
4 ext2fs_blocks_count [function] [call site] 00061
4 ext2fs_bg_has_super [function] [call site] 00062
3 io_channel_cache_readahead [function] [call site] 00063
3 ext2fs_descriptor_block_loc2 [function] [call site] 00064
3 io_channel_read_blk64 [function] [call site] 00065
3 ext2fs_has_group_desc_csum [function] [call site] 00066
4 ext2fs_has_feature_metadata_csum [function] [call site] 00067
4 ext2fs_has_feature_gdt_csum [function] [call site] 00068
3 ext2fs_bg_flags_clear [function] [call site] 00069
4 ext4fs_group_desc [function] [call site] 00070
5 ext2fs_group_desc [function] [call site] 00071
6 ext2fs_has_feature_64bit [function] [call site] 00072
6 ext2fs_has_feature_64bit [function] [call site] 00073
6 ext2fs_free_mem [function] [call site] 00074
6 ext2fs_get_mem [function] [call site] 00075
6 ext2fs_descriptor_block_loc2 [function] [call site] 00076
3 ext2fs_bg_flags_clear [function] [call site] 00077
3 ext2fs_bg_itable_unused_set [function] [call site] 00078
4 ext4fs_group_desc [function] [call site] 00079
4 ext2fs_has_feature_64bit [function] [call site] 00080
3 ext2fs_group_desc_csum_set [function] [call site] 00081
4 ext2fs_has_group_desc_csum [function] [call site] 00082
4 ext2fs_group_desc_csum [function] [call site] 00083
5 ext2fs_group_desc [function] [call site] 00084
5 ext2fs_has_feature_64bit [function] [call site] 00085
5 ext2fs_has_feature_metadata_csum [function] [call site] 00086
5 ext2fs_crc32c_le [function] [call site] 00087
5 ext2fs_crc32c_le [function] [call site] 00088
5 ext2fs_crc16 [function] [call site] 00089
5 ext2fs_crc16 [function] [call site] 00090
5 ext2fs_crc16 [function] [call site] 00091
5 ext2fs_crc16 [function] [call site] 00092
4 ext2fs_bg_checksum_set [function] [call site] 00093
5 ext4fs_group_desc [function] [call site] 00094
3 ext2fs_mark_super_dirty [function] [call site] 00095
3 ext2fs_has_feature_mmp [function] [call site] 00096
3 ext2fs_mmp_start [function] [call site] 00097
4 ext2fs_get_mem [function] [call site] 00098
4 ext2fs_mmp_read [function] [call site] 00099
5 ext2fs_blocks_count [function] [call site] 00100
5 stat [call site] 00101
5 open [call site] 00102
5 ext2fs_get_dio_alignment [function] [call site] 00103
6 ioctl [call site] 00104
6 sysconf [call site] 00105
5 ext2fs_get_memalign [function] [call site] 00106
5 ext2fs_llseek [function] [call site] 00107
6 lseek64 [call site] 00108
5 read [call site] 00109
4 sleep [call site] 00110
4 ext2fs_mmp_read [function] [call site] 00111
4 ext2fs_mmp_new_seq [function] [call site] 00112
5 getpid [call site] 00113
5 gettimeofday [call site] 00114
5 getuid [call site] 00115
5 gettimeofday [call site] 00116
5 random [call site] 00117
5 random [call site] 00118
4 gethostname [call site] 00119
4 strncpy [call site] 00120
4 ext2fs_mmp_write [function] [call site] 00121
5 gettimeofday [call site] 00122
5 ext2fs_blocks_count [function] [call site] 00123
5 ext2fs_mmp_csum_set [function] [call site] 00124
6 ext2fs_has_feature_metadata_csum [function] [call site] 00125
6 ext2fs_mmp_csum [function] [call site] 00126
7 ext2fs_crc32c_le [function] [call site] 00127
5 io_channel_write_blk64 [function] [call site] 00128
4 sleep [call site] 00129
4 ext2fs_mmp_read [function] [call site] 00130
4 ext2fs_mmp_write [function] [call site] 00131
3 ext2fs_mmp_stop [function] [call site] 00132
4 ext2fs_has_feature_mmp [function] [call site] 00133
4 ext2fs_mmp_read [function] [call site] 00134
4 memcmp [call site] 00135
4 ext2fs_mmp_write [function] [call site] 00136
4 close [call site] 00137
3 ext2fs_hashmap_create [function] [call site] 00138
4 calloc [call site] 00139
3 block_sha_map_free_entry [function] [call site] 00140
3 ext2fs_set_feature_shared_blocks [function] [call site] 00141
3 ext2fs_has_feature_casefold [function] [call site] 00142
3 ext2fs_load_nls_table [function] [call site] 00143
3 ext2fs_free [function] [call site] 00144
4 ext2fs_free_mem [function] [call site] 00145
4 ext2fs_free_mem [function] [call site] 00146
4 ext2fs_free_mem [function] [call site] 00147
4 ext2fs_free_mem [function] [call site] 00148
4 ext2fs_free_block_bitmap [function] [call site] 00149
5 ext2fs_free_generic_bmap [function] [call site] 00150
6 ext2fs_free_generic_bitmap [function] [call site] 00151
7 check_magic [function] [call site] 00152
7 ext2fs_free_mem [function] [call site] 00153
7 ext2fs_free_mem [function] [call site] 00154
7 ext2fs_free_mem [function] [call site] 00155
6 getenv [call site] 00156
6 ext2fs_print_bmap_statistics [function] [call site] 00157
7 fprintf [call site] 00158
7 fprintf [call site] 00159
6 ext2fs_free_mem [function] [call site] 00160
6 ext2fs_free_mem [function] [call site] 00161
4 ext2fs_free_inode_bitmap [function] [call site] 00162
5 ext2fs_free_generic_bmap [function] [call site] 00163
4 ext2fs_free_mem [function] [call site] 00164
4 ext2fs_badblocks_list_free [function] [call site] 00165
5 ext2fs_u32_list_free [function] [call site] 00166
6 ext2fs_free_mem [function] [call site] 00167
6 ext2fs_free_mem [function] [call site] 00168
4 ext2fs_free_dblist [function] [call site] 00169
5 ext2fs_free_mem [function] [call site] 00170
5 ext2fs_free_mem [function] [call site] 00171
4 ext2fs_free_inode_cache [function] [call site] 00172
5 ext2fs_free_mem [function] [call site] 00173
5 ext2fs_free_mem [function] [call site] 00174
5 ext2fs_free_mem [function] [call site] 00175
5 ext2fs_free_mem [function] [call site] 00176
4 ext2fs_free_mem [function] [call site] 00177
4 ext2fs_free_mem [function] [call site] 00178
4 ext2fs_hashmap_free [function] [call site] 00179
4 ext2fs_zero_blocks2 [function] [call site] 00180
5 io_channel_zeroout [function] [call site] 00181
5 realloc [call site] 00182
5 io_channel_write_blk64 [function] [call site] 00183
4 ext2fs_free_mem [function] [call site] 00184
1 ext2fs_check_directory [function] [call site] 00185
2 ext2fs_read_inode [function] [call site] 00186
3 ext2fs_read_inode2 [function] [call site] 00187
4 ext2fs_has_feature_journal_dev [function] [call site] 00188
4 ext2fs_create_inode_cache [function] [call site] 00189
5 ext2fs_get_mem [function] [call site] 00190
5 ext2fs_get_mem [function] [call site] 00191
5 ext2fs_get_array [function] [call site] 00192
5 ext2fs_get_mem [function] [call site] 00193
5 ext2fs_flush_icache [function] [call site] 00194
5 ext2fs_free_inode_cache [function] [call site] 00195
4 ext2fs_inode_table_loc [function] [call site] 00196
5 ext4fs_group_desc [function] [call site] 00197
5 ext2fs_has_feature_64bit [function] [call site] 00198
4 ext2fs_blocks_count [function] [call site] 00199
4 io_channel_read_blk64 [function] [call site] 00200
4 ext2fs_inode_csum_verify [function] [call site] 00201
5 ext2fs_has_feature_metadata_csum [function] [call site] 00202
5 ext2fs_inode_csum [function] [call site] 00203
6 ext2fs_crc32c_le [function] [call site] 00204
6 ext2fs_crc32c_le [function] [call site] 00205
6 ext2fs_crc32c_le [function] [call site] 00206
1 ext2fs_close [function] [call site] 00207
2 ext2fs_close2 [function] [call site] 00208
3 ext2fs_flush2 [function] [call site] 00209
4 ext2fs_has_feature_journal_dev [function] [call site] 00210
4 time [call site] 00211
4 ext2fs_clear_feature_journal_needs_recovery [function] [call site] 00212
4 ext2fs_has_feature_journal_dev [function] [call site] 00213
4 ext2fs_has_feature_meta_bg [function] [call site] 00214
4 ext2fs_super_and_bgd_loc2 [function] [call site] 00215
5 ext2fs_group_first_block2 [function] [call site] 00216
5 ext2fs_has_feature_meta_bg [function] [call site] 00217
5 ext2fs_bg_has_super [function] [call site] 00218
5 ext2fs_has_feature_64bit [function] [call site] 00219
5 ext2fs_has_feature_meta_bg [function] [call site] 00220
4 write_backup_super [function] [call site] 00221
5 ext2fs_superblock_csum_set [function] [call site] 00222
6 ext2fs_superblock_csum [function] [call site] 00223
5 io_channel_write_blk64 [function] [call site] 00224
4 io_channel_write_blk64 [function] [call site] 00225
4 ext2fs_has_feature_64bit [function] [call site] 00226
4 io_channel_write_blk64 [function] [call site] 00227
4 ext2fs_superblock_csum_set [function] [call site] 00228
4 write_primary_superblock [function] [call site] 00229
5 io_channel_write_blk64 [function] [call site] 00230
5 io_channel_write_byte [function] [call site] 00231
3 ext2fs_mmp_stop [function] [call site] 00232
3 ext2fs_free [function] [call site] 00233