Fuzz introspector: fuzz/surface_write_png_fuzzer.c
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
17 90 cairo_surface_destroy call site: {node_id} cairo_device_destroy
5 39 cairo_list_is_empty call site: {node_id} _cairo_surface_detach_snapshot
4 77 cairo_region_destroy call site: {node_id} _cairo_region_fini
3 8 fuzzer_get_tmpfile call site: {node_id}
3 12 fuzzer_get_tmpfile call site: {node_id}
3 73 _cairo_surface_finish call site: {node_id} _cairo_damage_destroy
2 2 fuzzer_get_tmpfile call site: {node_id}
2 5 fuzzer_get_tmpfile call site: {node_id}
2 50 _cairo_surface_detach_snapshot call site: {node_id} _cairo_surface_detach_snapshot
2 86 _cairo_region_fini call site: {node_id}
1 20 fuzzer_release_tmpfile call site: {node_id}
1 24 cairo_image_surface_get_format call site: {node_id}

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 fuzzer_get_tmpfile [function] [call site] 00001
2 strdup [call site] 00002
2 perror [call site] 00003
2 abort [call site] 00004
2 mkstemp [call site] 00005
2 perror [call site] 00006
2 abort [call site] 00007
2 fdopen [call site] 00008
2 perror [call site] 00009
2 close [call site] 00010
2 abort [call site] 00011
2 fwrite [call site] 00012
2 close [call site] 00013
2 fprintf [call site] 00014
2 abort [call site] 00015
2 fclose [call site] 00016
1 cairo_image_surface_create_from_png [call site] 00017
1 cairo_surface_status [function] [call site] 00018
1 fuzzer_release_tmpfile [function] [call site] 00019
2 unlink [call site] 00020
2 perror [call site] 00021
2 free [call site] 00022
1 cairo_image_surface_get_format [function] [call site] 00023
2 _cairo_surface_is_image [function] [call site] 00024
2 _cairo_error_throw [call site] 00025
1 cairo_image_surface_create_for_data [call site] 00026
1 cairo_surface_status [function] [call site] 00027
1 cairo_surface_destroy [function] [call site] 00028
2 CAIRO_REFERENCE_COUNT_IS_INVALID [call site] 00029
2 assert [call site] 00030
2 CAIRO_REFERENCE_COUNT_HAS_REFERENCE [call site] 00031
2 _cairo_reference_count_dec_and_test [call site] 00032
2 assert [call site] 00033
2 _cairo_surface_finish_snapshots [function] [call site] 00034
3 _cairo_surface_flush [function] [call site] 00035
4 _cairo_surface_detach_snapshots [function] [call site] 00036
5 _cairo_surface_has_snapshots [function] [call site] 00037
6 cairo_list_is_empty [function] [call site] 00038
7 cairo_list_validate [function] [call site] 00039
8 cairo_list_foreach [call site] 00040
8 _cairo_list_validate [function] [call site] 00041
9 assert [call site] 00042
9 assert [call site] 00043
5 _cairo_surface_detach_snapshot [function] [call site] 00044
6 assert [call site] 00045
6 cairo_list_del [function] [call site] 00046
7 _cairo_list_del [function] [call site] 00047
8 __cairo_list_del [function] [call site] 00048
7 cairo_list_init [function] [call site] 00049
6 cairo_surface_destroy [function] [call site] 00050
5 cairo_list_first_entry [call site] 00051
4 _cairo_surface_detach_snapshot [function] [call site] 00052
4 _cairo_surface_detach_mime_data [function] [call site] 00053
5 _cairo_surface_has_mime_data [function] [call site] 00054
5 _cairo_user_data_array_fini [function] [call site] 00055
6 _cairo_array_index [function] [call site] 00056
7 assert [call site] 00057
6 _cairo_array_fini [function] [call site] 00058
7 free [call site] 00059
5 _cairo_user_data_array_init [function] [call site] 00060
6 _cairo_array_init [function] [call site] 00061
4 __cairo_surface_flush [function] [call site] 00062
2 CAIRO_REFERENCE_COUNT_GET_VALUE [call site] 00063
2 _cairo_surface_finish [function] [call site] 00064
3 unlikely [call site] 00065
3 _cairo_surface_set_error [function] [call site] 00066
4 _cairo_status_set_error [call site] 00067
4 _cairo_error [function] [call site] 00068
5 assert [call site] 00069
5 _cairo_status_is_error [call site] 00070
3 assert [call site] 00071
3 assert [call site] 00072
3 _cairo_surface_has_snapshots [function] [call site] 00073
2 _cairo_damage_destroy [function] [call site] 00074
3 free [call site] 00075
3 cairo_region_destroy [function] [call site] 00076
4 CAIRO_REFERENCE_COUNT_IS_INVALID [call site] 00077
4 assert [call site] 00078
4 CAIRO_REFERENCE_COUNT_HAS_REFERENCE [call site] 00079
4 _cairo_reference_count_dec_and_test [call site] 00080
4 _cairo_region_fini [function] [call site] 00081
5 assert [call site] 00082
5 CAIRO_REFERENCE_COUNT_HAS_REFERENCE [call site] 00083
5 pixman_region32_fini [call site] 00084
5 VG [call site] 00085
5 VALGRIND_MAKE_MEM_UNDEFINED [call site] 00086
4 free [call site] 00087
3 free [call site] 00088
2 _cairo_user_data_array_fini [function] [call site] 00089
2 _cairo_user_data_array_fini [function] [call site] 00090
2 cairo_pattern_destroy [call site] 00091
2 cairo_device_destroy [function] [call site] 00092
3 CAIRO_REFERENCE_COUNT_IS_INVALID [call site] 00093
3 assert [call site] 00094
3 CAIRO_REFERENCE_COUNT_HAS_REFERENCE [call site] 00095
3 _cairo_reference_count_dec_and_test [call site] 00096
3 cairo_device_finish [function] [call site] 00097
4 CAIRO_REFERENCE_COUNT_IS_INVALID [call site] 00098
4 cairo_device_flush [function] [call site] 00099
5 unlikely [call site] 00100
5 _cairo_device_set_error [function] [call site] 00101
6 _cairo_status_set_error [call site] 00102
6 _cairo_error [function] [call site] 00103
3 assert [call site] 00104
3 CAIRO_MUTEX_FINI [call site] 00105
3 _cairo_user_data_array_fini [function] [call site] 00106
2 _cairo_font_options_fini [function] [call site] 00107
3 free [call site] 00108
3 free [call site] 00109
2 assert [call site] 00110
2 assert [call site] 00111
2 _cairo_surface_has_snapshots [function] [call site] 00112
2 assert [call site] 00113
2 CAIRO_REFERENCE_COUNT_HAS_REFERENCE [call site] 00114
2 free [call site] 00115
1 fuzzer_release_tmpfile [function] [call site] 00116
1 cairo_surface_write_to_png [call site] 00117
1 cairo_surface_destroy [function] [call site] 00118
1 cairo_surface_destroy [function] [call site] 00119
1 fuzzer_release_tmpfile [function] [call site] 00120