Fuzz introspector: bmp_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
2 2 1 :

['wuffs_base__empty_range_ii_u64']

2 2 wuffs_bmp__decoder__workbuf_len call site: 00000 /src/wuffs/fuzz/c/std/../../../release/c/wuffs-unsupported-snapshot.c:35948
0 208 2 :

['wuffs_base__status__is_suspension', 'wuffs_bmp__decoder__do_decode_image_config']

0 216 wuffs_bmp__decoder__do_decode_frame_config call site: 00000 /src/wuffs/fuzz/c/std/../../../release/c/wuffs-unsupported-snapshot.c:34704
0 10 5 :

['wuffs_base__u64__sat_add', 'wuffs_base__make_pixel_format', 'wuffs_base__pixel_format__default_background_color', 'wuffs_base__frame_config__set', 'wuffs_base__make_rect_ie_u32']

0 12 wuffs_bmp__decoder__do_decode_frame_config call site: 00000 /src/wuffs/fuzz/c/std/../../../release/c/wuffs-unsupported-snapshot.c:34716
0 2 1 :

['wuffs_base__make_status']

0 4 wuffs_bmp__decoder__decode_frame_config call site: 00000 /src/wuffs/fuzz/c/std/../../../release/c/wuffs-unsupported-snapshot.c:34650
0 2 1 :

['wuffs_base__status__is_suspension']

0 2 wuffs_bmp__decoder__do_decode_image_config call site: 00000 /src/wuffs/fuzz/c/std/../../../release/c/wuffs-unsupported-snapshot.c:34503
0 2 1 :

['wuffs_base__make_pixel_format']

0 2 wuffs_base__pixel_buffer__pixel_format call site: 00000 /src/wuffs/fuzz/c/std/../../../release/c/wuffs-unsupported-snapshot.c:5557
0 2 1 :

['wuffs_base__empty_slice_u8']

0 2 wuffs_base__slice_u8__subslice_i call site: 00000 /src/wuffs/fuzz/c/std/../../../release/c/wuffs-unsupported-snapshot.c:1924
0 0 None 87 271 wuffs_base__pixel_swizzler__prepare call site: 00000 /src/wuffs/fuzz/c/std/../../../release/c/wuffs-unsupported-snapshot.c:30167
0 0 None 24 144 wuffs_bmp__decoder__swizzle_rle call site: 00000 /src/wuffs/fuzz/c/std/../../../release/c/wuffs-unsupported-snapshot.c:35337
0 0 None 8 74 wuffs_bmp__decoder__swizzle_low_bit_depth call site: 00000 /src/wuffs/fuzz/c/std/../../../release/c/wuffs-unsupported-snapshot.c:35579
0 0 None 8 74 wuffs_bmp__decoder__swizzle_low_bit_depth call site: 00000 /src/wuffs/fuzz/c/std/../../../release/c/wuffs-unsupported-snapshot.c:35583
0 0 None 8 46 wuffs_bmp__decoder__swizzle_bitfields call site: 00000 /src/wuffs/fuzz/c/std/../../../release/c/wuffs-unsupported-snapshot.c:35495

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 llvmFuzzerTestOneInput [function] [call site] 00001
2 jenkins_hash_u32 [function] [call site] 00002
2 jenkins_hash_u32 [function] [call site] 00003
2 popcount32 [function] [call site] 00004
2 wuffs_base__ptr_u8__reader [function] [call site] 00005
2 fuzz [function] [call site] 00006
3 wuffs_bmp__decoder__initialize [function] [call site] 00007
4 wuffs_base__make_status [function] [call site] 00008
4 wuffs_base__make_status [function] [call site] 00009
4 wuffs_base__make_status [function] [call site] 00010
4 wuffs_base__make_status [function] [call site] 00011
4 wuffs_base__make_status [function] [call site] 00012
3 wuffs_base__u64__rotate_right [function] [call site] 00013
3 wuffs_base__status__is_ok [function] [call site] 00014
3 wuffs_base__status__message [function] [call site] 00015
3 wuffs_bmp__decoder__upcast_as__wuffs_base__image_decoder [function] [call site] 00016
3 fuzz_image_decoder [function] [call site] 00017
4 wuffs_base__image_decoder__decode_image_config [function] [call site] 00018
5 wuffs_base__make_status [function] [call site] 00019
5 wuffs_base__make_status [function] [call site] 00020
5 wuffs_base__make_status [function] [call site] 00021
4 wuffs_base__status__is_ok [function] [call site] 00022
4 wuffs_base__status__message [function] [call site] 00023
4 wuffs_base__image_config__is_valid [function] [call site] 00024
5 wuffs_base__pixel_config__is_valid [function] [call site] 00025
4 wuffs_base__pixel_config__width [function] [call site] 00026
4 wuffs_base__pixel_config__height [function] [call site] 00027
4 wuffs_base__pixel_config__set [function] [call site] 00028
4 wuffs_base__image_decoder__workbuf_len [function] [call site] 00029
5 wuffs_base__empty_range_ii_u64 [function] [call site] 00030
5 wuffs_base__empty_range_ii_u64 [function] [call site] 00031
5 wuffs_base__empty_range_ii_u64 [function] [call site] 00032
4 wuffs_base__malloc_slice_u8 [function] [call site] 00033
5 wuffs_base__make_slice_u8 [function] [call site] 00034
5 wuffs_base__empty_slice_u8 [function] [call site] 00035
4 wuffs_base__pixel_config__pixbuf_len [function] [call site] 00036
5 wuffs_base__pixel_format__is_planar [function] [call site] 00037
5 wuffs_base__pixel_format__bits_per_pixel [function] [call site] 00038
5 wuffs_base__pixel_format__is_indexed [function] [call site] 00039
4 wuffs_base__malloc_slice_u8 [function] [call site] 00040
4 wuffs_base__image_decoder__decode_frame_config [function] [call site] 00041
5 wuffs_base__make_status [function] [call site] 00042
5 wuffs_base__make_status [function] [call site] 00043
5 wuffs_base__make_status [function] [call site] 00044
4 wuffs_base__status__is_ok [function] [call site] 00045
4 wuffs_base__status__message [function] [call site] 00046
4 wuffs_base__image_decoder__decode_frame [function] [call site] 00047
5 wuffs_base__make_status [function] [call site] 00048
5 wuffs_base__make_status [function] [call site] 00049
5 wuffs_base__make_status [function] [call site] 00050
4 wuffs_base__frame_config__bounds [function] [call site] 00051
4 wuffs_base__image_decoder__frame_dirty_rect [function] [call site] 00052
5 wuffs_base__empty_rect_ie_u32 [function] [call site] 00053
5 wuffs_base__empty_rect_ie_u32 [function] [call site] 00054
5 wuffs_base__empty_rect_ie_u32 [function] [call site] 00055
4 wuffs_base__rect_ie_u32__contains_rect [function] [call site] 00056
5 wuffs_base__rect_ie_u32__intersect [function] [call site] 00057
6 wuffs_base__u32__max [function] [call site] 00058
6 wuffs_base__u32__max [function] [call site] 00059
6 wuffs_base__u32__min [function] [call site] 00060
6 wuffs_base__u32__min [function] [call site] 00061
5 wuffs_base__rect_ie_u32__equals [function] [call site] 00062
6 wuffs_base__rect_ie_u32__is_empty [function] [call site] 00063
6 wuffs_base__rect_ie_u32__is_empty [function] [call site] 00064
4 wuffs_base__status__is_ok [function] [call site] 00065
4 wuffs_base__status__message [function] [call site] 00066
4 wuffs_base__rect_ie_u32__equals [function] [call site] 00067
2 strnlen [call site] 00068
2 strstr [call site] 00069
2 fprintf [call site] 00070
2 intentional_segfault [function] [call site] 00071
2 strstr [call site] 00072
2 fprintf [call site] 00073
2 intentional_segfault [function] [call site] 00074