Fuzz introspector: libtasn1_array2tree_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
3 3 1 :

['safe_memset']

3 3 _asn1_remove_node call site: 00019 /src/libtasn1/lib/parser_aux.c:503
2 2 1 :

['strcpy']

2 2 _asn1_check_identifier call site: 00040 /src/libtasn1/lib/parser_aux.c:1032
0 0 None 0 39 _asn1_delete_structure call site: 00021 /src/libtasn1/lib/structure.c:347
0 0 None 0 0 asn1_length_der call site: 00077 /src/libtasn1/lib/coding.c:83
0 0 None 0 0 asn1_octet_der call site: 00076 /src/libtasn1/lib/coding.c:178
0 0 None 0 0 _asn1_convert_integer call site: 00075 /src/libtasn1/lib/element.c:111
0 0 None 0 0 _asn1_str_cpy call site: 00010 /src/libtasn1/lib/gstr.c:57
0 0 None 0 0 _asn1_add_static_node call site: 00007 /src/libtasn1/lib/parser_aux.c:71
0 0 1 :

['free']

0 0 _asn1_add_static_node call site: 00007 /src/libtasn1/lib/parser_aux.c:75
0 0 None 0 0 asn1_find_node call site: 00040 /src/libtasn1/lib/parser_aux.c:129
0 0 None 0 0 asn1_find_node call site: 00040 /src/libtasn1/lib/parser_aux.c:132
0 0 None 0 0 asn1_find_node call site: 00042 /src/libtasn1/lib/parser_aux.c:150

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 __assert_fail [call site] 00001
1 strcmp [call site] 00002
1 strcmp [call site] 00003
1 asn1_array2tree [function] [call site] 00004
2 convert_old_type [function] [call site] 00005
2 _asn1_add_static_node [function] [call site] 00006
3 calloc [call site] 00007
2 _asn1_set_name [function] [call site] 00008
3 _asn1_str_cpy [function] [call site] 00009
4 strlen [call site] 00010
4 strcpy [call site] 00011
3 _asn1_hash_name [function] [call site] 00012
2 strlen [call site] 00013
2 _asn1_set_value [function] [call site] 00014
2 _asn1_delete_structure [function] [call site] 00015
3 _asn1_find_up [function] [call site] 00016
3 _asn1_set_down [function] [call site] 00017
3 _asn1_delete_node_from_list [function] [call site] 00018
3 _asn1_remove_node [function] [call site] 00019
4 safe_memset [function] [call site] 00020
3 _asn1_find_left [function] [call site] 00021
3 _asn1_find_up [function] [call site] 00022
3 _asn1_set_down [function] [call site] 00023
3 _asn1_set_right [function] [call site] 00024
3 _asn1_delete_node_from_list [function] [call site] 00025
3 _asn1_remove_node [function] [call site] 00026
2 _asn1_set_down [function] [call site] 00027
2 _asn1_delete_structure [function] [call site] 00028
2 _asn1_set_right [function] [call site] 00029
2 _asn1_find_up [function] [call site] 00030
2 _asn1_check_identifier [function] [call site] 00031
3 type_field [function] [call site] 00032
3 _asn1_str_cpy [function] [call site] 00033
3 _asn1_str_cat [function] [call site] 00034
4 strlen [call site] 00035
4 strlen [call site] 00036
4 strcat [call site] 00037
4 strncat [call site] 00038
3 _asn1_str_cat [function] [call site] 00039
3 asn1_find_node [function] [call site] 00040
4 strchr [call site] 00041
4 strchr [call site] 00042
4 _asn1_hash_name [function] [call site] 00043
4 _asn1_str_cpy [function] [call site] 00044
4 _asn1_hash_name [function] [call site] 00045
4 strcmp [call site] 00046
4 strchr [call site] 00047
4 _asn1_str_cpy [function] [call site] 00048
4 _asn1_hash_name [function] [call site] 00049
4 strcmp [call site] 00050
3 _asn1_str_cpy [function] [call site] 00051
3 strcpy [call site] 00052
3 type_field [function] [call site] 00053
3 type_field [function] [call site] 00054
3 _asn1_str_cpy [function] [call site] 00055
3 _asn1_str_cat [function] [call site] 00056
3 _asn1_str_cat [function] [call site] 00057
3 _asn1_str_cpy [function] [call site] 00058
3 strcpy [call site] 00059
3 asn1_find_node [function] [call site] 00060
3 type_field [function] [call site] 00061
3 type_field [function] [call site] 00062
3 type_field [function] [call site] 00063
3 c_isdigit [function] [call site] 00064
3 _asn1_str_cpy [function] [call site] 00065
3 _asn1_str_cat [function] [call site] 00066
3 _asn1_str_cat [function] [call site] 00067
3 _asn1_str_cpy [function] [call site] 00068
3 asn1_find_node [function] [call site] 00069
3 type_field [function] [call site] 00070
3 _asn1_find_up [function] [call site] 00071
2 _asn1_change_integer_value [function] [call site] 00072
3 type_field [function] [call site] 00073
3 _asn1_convert_integer [function] [call site] 00074
4 strtol [call site] 00075
3 asn1_octet_der [function] [call site] 00076
4 asn1_length_der [function] [call site] 00077
3 _asn1_set_value [function] [call site] 00078
3 _asn1_find_up [function] [call site] 00079
2 _asn1_expand_object_id [function] [call site] 00080
3 _asn1_str_cpy [function] [call site] 00081
3 type_field [function] [call site] 00082
3 type_field [function] [call site] 00083
3 c_isdigit [function] [call site] 00084
3 _asn1_str_cpy [function] [call site] 00085
3 _asn1_str_cat [function] [call site] 00086
3 _asn1_str_cat [function] [call site] 00087
3 asn1_find_node [function] [call site] 00088
3 _asn1_is_up [function] [call site] 00089
4 _asn1_find_up [function] [call site] 00090
3 type_field [function] [call site] 00091
3 _asn1_set_down [function] [call site] 00092
3 _asn1_delete_structure [function] [call site] 00093
3 _asn1_delete_node_from_list [function] [call site] 00094
3 _asn1_remove_node [function] [call site] 00095
3 type_field [function] [call site] 00096
3 _asn1_add_single_node [function] [call site] 00097
4 calloc [call site] 00098
3 _asn1_set_name [function] [call site] 00099
3 strlen [call site] 00100
3 _asn1_set_value [function] [call site] 00101
3 _asn1_add_static_node2 [function] [call site] 00102
3 _asn1_set_right [function] [call site] 00103
3 _asn1_set_down [function] [call site] 00104
3 _asn1_set_right [function] [call site] 00105
3 _asn1_set_right [function] [call site] 00106
3 _asn1_find_up [function] [call site] 00107
3 type_field [function] [call site] 00108
3 type_field [function] [call site] 00109
3 _asn1_str_cpy [function] [call site] 00110
3 _asn1_str_cat [function] [call site] 00111
3 _asn1_str_cat [function] [call site] 00112
3 asn1_find_node [function] [call site] 00113
3 type_field [function] [call site] 00114
3 type_field [function] [call site] 00115
3 _asn1_str_cat [function] [call site] 00116
3 _asn1_str_cat [function] [call site] 00117
3 strlen [call site] 00118
3 _asn1_set_value [function] [call site] 00119
3 _asn1_find_up [function] [call site] 00120
2 _asn1_str_cpy [function] [call site] 00121
2 _asn1_str_cat [function] [call site] 00122
2 _asn1_str_cat [function] [call site] 00123
2 _asn1_delete_list_and_nodes [function] [call site] 00124
3 _asn1_remove_node [function] [call site] 00125
2 _asn1_delete_list [function] [call site] 00126
1 asn1_delete_structure [function] [call site] 00127
2 _asn1_delete_structure [function] [call site] 00128