Fuzz introspector
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Project functions overview

The following table shows data about each function in the project. The functions included in this table correspond to all functions that exist in the executables of the fuzzers. As such, there may be functions that are from third-party libraries.

For further technical details on the meaning of columns in the below table, please see the Glossary .

Func name Functions filename Args Function call depth Reached by Fuzzers Runtime reached by Fuzzers Combined reached by Fuzzers Fuzzers runtime hit Func lines hit % I Count BB Count Cyclomatic complexity Functions reached Reached by functions Accumulated cyclomatic complexity Undiscovered complexity

Fuzzer details

Fuzzer: asn1_get_object_id_der_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 0 0.0%
gold [1:9] 0 0.0%
yellow [10:29] 0 0.0%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 17 100.%
All colors 17 100

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
0 0 None 0 0 asn1_get_length_der call site: 00002 /src/libtasn1/lib/decoding.c:118
0 0 None 0 0 asn1_get_object_id_der call site: 00001 /src/libtasn1/lib/decoding.c:423
0 0 None 0 0 _asn1_str_cpy call site: 00005 /src/libtasn1/lib/gstr.c:58

Runtime coverage analysis

Covered functions
6
Functions that are reachable but not covered
4
Reachable functions
10
Percentage of reachable functions covered
60.0%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/libtasn1/fuzz/asn1_get_object_id_der_fuzzer.c 1
decoding.c 2
parser_aux.c 1
gstr.c 2

Fuzzer: asn1_decode_simple_ber_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 4 17.3%
gold [1:9] 0 0.0%
yellow [10:29] 0 0.0%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 19 82.6%
All colors 23 100

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
104 104 1 :

['_asn1_get_indefinite_length_string']

104 104 asn1_get_length_ber call site: 00009 /src/libtasn1/lib/decoding.c:257
0 0 None 0 0 _asn1_decode_simple_der call site: 00016 /src/libtasn1/lib/decoding.c:2133
0 0 None 0 0 _asn1_decode_simple_der call site: 00016 /src/libtasn1/lib/decoding.c:2141
0 0 None 0 0 _asn1_decode_simple_der call site: 00017 /src/libtasn1/lib/decoding.c:2149
0 0 None 0 0 _asn1_decode_simple_der call site: 00017 /src/libtasn1/lib/decoding.c:2152
0 0 None 0 0 _asn1_decode_simple_ber call site: 00002 /src/libtasn1/lib/decoding.c:2259
0 0 None 0 0 _asn1_decode_simple_ber call site: 00002 /src/libtasn1/lib/decoding.c:2267
0 0 None 0 0 _asn1_decode_simple_ber call site: 00004 /src/libtasn1/lib/decoding.c:2349
0 0 None 0 0 _asn1_decode_simple_ber call site: 00004 /src/libtasn1/lib/decoding.c:2427
0 0 1 :

['free']

0 0 _asn1_decode_simple_ber call site: 00004 /src/libtasn1/lib/decoding.c:2463
0 0 None 0 0 append call site: 00006 /src/libtasn1/lib/decoding.c:2209
0 0 None 0 0 _asn1_realloc call site: 00006 /src/libtasn1/lib/./int.h:205

Runtime coverage analysis

Covered functions
9
Functions that are reachable but not covered
3
Reachable functions
12
Percentage of reachable functions covered
75.0%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/libtasn1/fuzz/asn1_decode_simple_ber_fuzzer.c 1
decoding.c 8
./int.h 1

Fuzzer: libtasn1_array2tree_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 4 3.00%
gold [1:9] 0 0.0%
yellow [10:29] 0 0.0%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 129 96.9%
All colors 133 100

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:512
2 2 1 :

['strcpy']

2 2 _asn1_check_identifier call site: 00040 /src/libtasn1/lib/parser_aux.c:1043
0 0 None 0 39 _asn1_delete_structure call site: 00021 /src/libtasn1/lib/structure.c:350
0 0 None 0 0 asn1_length_der call site: 00081 /src/libtasn1/lib/coding.c:81
0 0 None 0 0 asn1_octet_der call site: 00080 /src/libtasn1/lib/coding.c:176
0 0 None 0 0 _asn1_convert_integer call site: 00079 /src/libtasn1/lib/element.c:114
0 0 None 0 0 _asn1_str_cpy call site: 00010 /src/libtasn1/lib/gstr.c:58
0 0 None 0 0 _asn1_add_static_node call site: 00007 /src/libtasn1/lib/parser_aux.c:72
0 0 1 :

['free']

0 0 _asn1_add_static_node call site: 00007 /src/libtasn1/lib/parser_aux.c:76
0 0 None 0 0 asn1_find_node call site: 00040 /src/libtasn1/lib/parser_aux.c:131
0 0 None 0 0 asn1_find_node call site: 00040 /src/libtasn1/lib/parser_aux.c:134
0 0 None 0 0 asn1_find_node call site: 00042 /src/libtasn1/lib/parser_aux.c:152

Runtime coverage analysis

Covered functions
32
Functions that are reachable but not covered
10
Reachable functions
42
Percentage of reachable functions covered
76.19%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/libtasn1/fuzz/libtasn1_array2tree_fuzzer.c 1
structure.c 5
./int.h 2
parser_aux.c 16
gstr.c 2
./parser_aux.h 1
./gstr.h 1
gl/./c-ctype.h 1
./element.h 1
element.c 1
coding.c 2

Fuzzer: asn1_decode_simple_der_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 1 12.5%
gold [1:9] 0 0.0%
yellow [10:29] 0 0.0%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 7 87.5%
All colors 8 100

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
0 0 None 0 0 asn1_get_length_der call site: 00004 /src/libtasn1/lib/decoding.c:118
0 0 None 0 0 _asn1_decode_simple_der call site: 00002 /src/libtasn1/lib/decoding.c:2133
0 0 None 0 0 _asn1_decode_simple_der call site: 00002 /src/libtasn1/lib/decoding.c:2141

Runtime coverage analysis

Covered functions
5
Functions that are reachable but not covered
1
Reachable functions
6
Percentage of reachable functions covered
83.33%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/libtasn1/fuzz/asn1_decode_simple_der_fuzzer.c 1
decoding.c 4

Fuzzer: asn1_get_length_ber_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 0 0.0%
gold [1:9] 0 0.0%
yellow [10:29] 0 0.0%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 6 100.%
All colors 6 100

Runtime coverage analysis

Covered functions
5
Functions that are reachable but not covered
0
Reachable functions
5
Percentage of reachable functions covered
100.0%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/libtasn1/fuzz/asn1_get_length_ber_fuzzer.c 1
decoding.c 4

Fuzzer: asn1_get_length_der_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 0 0.0%
gold [1:9] 0 0.0%
yellow [10:29] 0 0.0%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 2 100.%
All colors 2 100

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
0 0 None 0 0 asn1_get_length_der call site: 00001 /src/libtasn1/lib/decoding.c:118

Runtime coverage analysis

Covered functions
2
Functions that are reachable but not covered
0
Reachable functions
2
Percentage of reachable functions covered
100.0%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/libtasn1/fuzz/asn1_get_length_der_fuzzer.c 1
decoding.c 1

Fuzzer: libtasn1_gnutls_der_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 284 65.8%
gold [1:9] 11 2.55%
yellow [10:29] 8 1.85%
greenyellow [30:49] 2 0.46%
lawngreen 50+ 126 29.2%
All colors 431 100

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
839 1837 16 :

['extract_tag_der_recursive', '_asn1_append_sequence_set', 'asn1_get_length_der', '_asn1_find_up', '_asn1_get_time_der', '_asn1_delete_not_used', 'asn1_get_tag_der', '_asn1_decode_simple_ber', 'type_field', 'asn1_get_object_id_der', 'strlen', 'free', '_asn1_set_value', '_asn1_set_value_lv', '_asn1_get_indefinite_length_string', 'delete_unneeded_choice_fields']

866 2020 asn1_der_decoding2 call site: 00207 /src/libtasn1/lib/decoding.c:1101
113 151 3 :

['asn1_get_length_der', 'strtoul', 'asn1_get_length_ber']

113 318 _asn1_extract_tag_der call site: 00178 /src/libtasn1/lib/decoding.c:568
27 27 1 :

['_asn1_error_description_tag_error']

27 66 asn1_der_decoding2 call site: 00208 /src/libtasn1/lib/decoding.c:1108
12 12 1 :

['_asn1_delete_list_and_nodes']

12 12 asn1_array2tree call site: 00124 /src/libtasn1/lib/structure.c:275
4 23 3 :

['_asn1_ltostr', 'strtoul', '_asn1_set_name']

4 43 _asn1_insert_tag_der call site: 00360 /src/libtasn1/lib/coding.c:676
3 3 1 :

['safe_memset']

3 3 _asn1_remove_node call site: 00016 /src/libtasn1/lib/parser_aux.c:512
2 22 4 :

['strtol', 'type_field.275', 'asn1_length_der', '_asn1_set_name']

2 22 _asn1_complete_explicit_tag call site: 00421 /src/libtasn1/lib/coding.c:547
2 2 2 :

['strcmp', 'type_field.63']

4 20 asn1_write_value call site: 00329 /src/libtasn1/lib/element.c:568
0 28 2 :

['_asn1_str_cpy', '_asn1_str_cat']

12 43 asn1_array2tree call site: 00081 /src/libtasn1/lib/structure.c:263
0 2 1 :

['_asn1_hash_name']

0 2 _asn1_cpy_name call site: 00134 /src/libtasn1/lib/parser_aux.c:442
0 0 None 866 2020 asn1_der_decoding2 call site: 00174 /src/libtasn1/lib/decoding.c:936
0 0 None 866 2020 asn1_der_decoding2 call site: 00174 /src/libtasn1/lib/decoding.c:959

Runtime coverage analysis

Covered functions
47
Functions that are reachable but not covered
42
Reachable functions
89
Percentage of reachable functions covered
52.81%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/libtasn1/fuzz/libtasn1_gnutls_der_fuzzer.c 1
structure.c 10
./int.h 3
parser_aux.c 20
gstr.c 2
./parser_aux.h 1
./gstr.h 1
gl/./c-ctype.h 1
./element.h 1
element.c 5
coding.c 14
decoding.c 16

Fuzzer: libtasn1_pkix_der_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 97 32.2%
gold [1:9] 11 3.65%
yellow [10:29] 0 0.0%
greenyellow [30:49] 1 0.33%
lawngreen 50+ 192 63.7%
All colors 301 100

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
27 27 1 :

['_asn1_error_description_tag_error']

27 66 asn1_der_decoding2 call site: 00208 /src/libtasn1/lib/decoding.c:1108
12 12 1 :

['_asn1_delete_list_and_nodes']

12 12 asn1_array2tree call site: 00124 /src/libtasn1/lib/structure.c:275
3 3 1 :

['safe_memset']

3 3 _asn1_remove_node call site: 00016 /src/libtasn1/lib/parser_aux.c:512
0 717 2 :

['asn1_der_decoding', 'asn1_find_node']

0 717 asn1_der_decoding_startEnd call site: 00297 /src/libtasn1/lib/decoding.c:1709
0 155 1 :

['_asn1_extract_tag_der']

0 155 extract_tag_der_recursive call site: 00178 /src/libtasn1/lib/decoding.c:749
0 28 2 :

['_asn1_str_cpy', '_asn1_str_cat']

12 43 asn1_array2tree call site: 00081 /src/libtasn1/lib/structure.c:263
0 2 1 :

['_asn1_hash_name']

0 2 _asn1_cpy_name call site: 00134 /src/libtasn1/lib/parser_aux.c:442
0 0 None 31 2020 asn1_der_decoding2 call site: 00174 /src/libtasn1/lib/decoding.c:936
0 0 None 31 2020 asn1_der_decoding2 call site: 00174 /src/libtasn1/lib/decoding.c:959
0 0 None 31 2020 asn1_der_decoding2 call site: 00267 /src/libtasn1/lib/decoding.c:1342
0 0 None 31 2020 asn1_der_decoding2 call site: 00288 /src/libtasn1/lib/decoding.c:1527
0 0 None 31 2020 asn1_der_decoding2 call site: 00288 /src/libtasn1/lib/decoding.c:1560

Runtime coverage analysis

Covered functions
54
Functions that are reachable but not covered
21
Reachable functions
75
Percentage of reachable functions covered
72.0%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/libtasn1/fuzz/libtasn1_pkix_der_fuzzer.c 1
structure.c 10
./int.h 3
parser_aux.c 20
gstr.c 2
./parser_aux.h 1
./gstr.h 1
gl/./c-ctype.h 1
./element.h 1
element.c 4
coding.c 2
decoding.c 17

Fuzzer: libtasn1_parser2tree_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 217 63.2%
gold [1:9] 0 0.0%
yellow [10:29] 3 0.87%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 123 35.8%
All colors 343 100

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: 00298 /src/libtasn1/lib/parser_aux.c:512
2 2 1 :

['strcpy']

2 2 _asn1_check_identifier call site: 00237 /src/libtasn1/lib/parser_aux.c:1043
0 0 None 28 1016 _asn1_yyparse call site: 00203 /src/libtasn1/lib/ASN1.c:1534
0 0 None 28 1016 _asn1_yyparse call site: 00203 /src/libtasn1/lib/ASN1.c:1542
0 0 None 28 1016 _asn1_yyparse call site: 00203 /src/libtasn1/lib/ASN1.c:1619
0 0 None 28 1016 _asn1_yyparse call site: 00204 /src/libtasn1/lib/ASN1.c:2602
0 0 None 28 1016 _asn1_yyparse call site: 00212 /src/libtasn1/lib/ASN1.c:2631
0 0 None 4 343 _asn1_expand_object_id call site: 00293 /src/libtasn1/lib/parser_aux.c:780
0 0 None 4 343 _asn1_expand_object_id call site: 00318 /src/libtasn1/lib/parser_aux.c:844
0 0 None 2 126 _asn1_expand_object_id call site: 00331 /src/libtasn1/lib/parser_aux.c:919
0 0 None 0 40 _asn1_change_integer_value call site: 00279 /src/libtasn1/lib/parser_aux.c:702
0 0 None 0 39 _asn1_delete_structure call site: 00296 /src/libtasn1/lib/structure.c:342

Runtime coverage analysis

Covered functions
45
Functions that are reachable but not covered
16
Reachable functions
61
Percentage of reachable functions covered
73.77%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/libtasn1/fuzz/libtasn1_parser2tree_fuzzer.c 2
ASN1.y 4
ASN1.c 4
gl/./c-ctype.h 1
parser_aux.c 19
./parser_aux.h 4
gstr.c 2
./int.h 1
./element.h 1
element.c 1
coding.c 2
structure.c 4
./gstr.h 1

Fuzz engine guidance

This sections provides heuristics that can be used as input to a fuzz engine when running a given fuzz target. The current focus is on providing input that is usable by libFuzzer.

/src/libtasn1/fuzz/asn1_get_object_id_der_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


/src/libtasn1/fuzz/asn1_decode_simple_ber_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['asn1_get_length_ber', '_asn1_decode_simple_ber']

/src/libtasn1/fuzz/libtasn1_array2tree_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['_asn1_delete_structure', 'asn1_array2tree', '_asn1_check_identifier']

/src/libtasn1/fuzz/asn1_decode_simple_der_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['_asn1_decode_simple_der']

/src/libtasn1/fuzz/asn1_get_length_ber_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


/src/libtasn1/fuzz/asn1_get_length_der_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


/src/libtasn1/fuzz/libtasn1_gnutls_der_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['asn1_der_decoding2', 'asn1_write_value', 'extract_tag_der_recursive', 'asn1_der_coding', '_asn1_expand_object_id']

/src/libtasn1/fuzz/libtasn1_pkix_der_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['_asn1_expand_object_id', '_asn1_type_choice_config', 'asn1_der_decoding2', '_asn1_check_identifier', '_asn1_add_single_node', '_asn1_change_integer_value', 'asn1_find_node']

/src/libtasn1/fuzz/libtasn1_parser2tree_fuzzer.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['_asn1_set_name', '_asn1_yyparse', '_asn1_delete_list_and_nodes', '_asn1_delete_structure', '_asn1_add_static_node', '_asn1_expand_object_id', 'LLVMFuzzerTestOneInput', 'fopen']

Files and Directories in report

This section shows which files and directories are considered in this report. The main reason for showing this is fuzz introspector may include more code in the reasoning than is desired. This section helps identify if too many files/directories are included, e.g. third party code, which may be irrelevant for the threat model. In the event too much is included, fuzz introspector supports a configuration file that can exclude data from the report. See the following link for more information on how to create a config file: link

Files in report

Source file Reached by Covered by
[] []
/src/libtasn1/lib/./int.h ['asn1_decode_simple_ber_fuzzer', 'libtasn1_array2tree_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer', 'libtasn1_parser2tree_fuzzer'] []
/src/libtasn1/lib/ASN1.c ['libtasn1_parser2tree_fuzzer'] ['libtasn1_parser2tree_fuzzer']
/src/libtasn1/lib/./parser_aux.h ['libtasn1_array2tree_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer', 'libtasn1_parser2tree_fuzzer'] []
/src/libtasn1/fuzz/asn1_get_object_id_der_fuzzer.c ['asn1_get_object_id_der_fuzzer'] ['asn1_get_object_id_der_fuzzer']
/src/libtasn1/fuzz/asn1_get_length_der_fuzzer.c ['asn1_get_length_der_fuzzer'] ['asn1_get_length_der_fuzzer']
/src/libtasn1/fuzz/asn1_decode_simple_ber_fuzzer.c ['asn1_decode_simple_ber_fuzzer'] ['asn1_decode_simple_ber_fuzzer']
/src/libtasn1/lib/coding.c ['libtasn1_array2tree_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer', 'libtasn1_parser2tree_fuzzer'] ['libtasn1_array2tree_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer', 'libtasn1_parser2tree_fuzzer']
/src/libtasn1/lib/./element.h ['libtasn1_array2tree_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer', 'libtasn1_parser2tree_fuzzer'] []
/src/libtasn1/lib/gl/./c-ctype.h ['libtasn1_array2tree_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer', 'libtasn1_parser2tree_fuzzer'] []
/src/libtasn1/fuzz/libtasn1_array2tree_fuzzer.c ['libtasn1_array2tree_fuzzer'] ['libtasn1_array2tree_fuzzer']
/src/libtasn1/lib/element.c ['libtasn1_array2tree_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer', 'libtasn1_parser2tree_fuzzer'] ['libtasn1_array2tree_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer', 'libtasn1_parser2tree_fuzzer']
/src/libtasn1/lib/decoding.c ['asn1_get_object_id_der_fuzzer', 'asn1_decode_simple_ber_fuzzer', 'asn1_decode_simple_der_fuzzer', 'asn1_get_length_ber_fuzzer', 'asn1_get_length_der_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer'] ['asn1_get_object_id_der_fuzzer', 'asn1_decode_simple_ber_fuzzer', 'asn1_decode_simple_der_fuzzer', 'asn1_get_length_ber_fuzzer', 'asn1_get_length_der_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer']
/src/libtasn1/fuzz/libtasn1_pkix_der_fuzzer.c ['libtasn1_pkix_der_fuzzer'] ['libtasn1_pkix_der_fuzzer']
/src/libtasn1/lib/ASN1.y ['libtasn1_parser2tree_fuzzer'] ['libtasn1_parser2tree_fuzzer']
/src/libtasn1/lib/gstr.c ['asn1_get_object_id_der_fuzzer', 'libtasn1_array2tree_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer', 'libtasn1_parser2tree_fuzzer'] ['asn1_get_object_id_der_fuzzer', 'libtasn1_array2tree_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer', 'libtasn1_parser2tree_fuzzer']
/src/libtasn1/fuzz/asn1_decode_simple_der_fuzzer.c ['asn1_decode_simple_der_fuzzer'] ['asn1_decode_simple_der_fuzzer']
/src/libtasn1/fuzz/libtasn1_gnutls_der_fuzzer.c ['libtasn1_gnutls_der_fuzzer'] ['libtasn1_gnutls_der_fuzzer']
/src/libtasn1/fuzz/libtasn1_parser2tree_fuzzer.c ['libtasn1_parser2tree_fuzzer'] ['libtasn1_parser2tree_fuzzer']
/src/libtasn1/lib/parser_aux.c ['asn1_get_object_id_der_fuzzer', 'libtasn1_array2tree_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer', 'libtasn1_parser2tree_fuzzer'] ['asn1_get_object_id_der_fuzzer', 'libtasn1_array2tree_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer', 'libtasn1_parser2tree_fuzzer']
/src/libtasn1/lib/structure.c ['libtasn1_array2tree_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer', 'libtasn1_parser2tree_fuzzer'] ['libtasn1_array2tree_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer', 'libtasn1_parser2tree_fuzzer']
/src/libtasn1/lib/./gstr.h ['libtasn1_array2tree_fuzzer', 'libtasn1_gnutls_der_fuzzer', 'libtasn1_pkix_der_fuzzer', 'libtasn1_parser2tree_fuzzer'] []
/src/libtasn1/fuzz/asn1_get_length_ber_fuzzer.c ['asn1_get_length_ber_fuzzer'] ['asn1_get_length_ber_fuzzer']

Directories in report

Directory
/src/libtasn1/fuzz/
/src/libtasn1/lib/
/src/libtasn1/lib/./
/src/libtasn1/lib/gl/./