Fuzz introspector
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues
Report generation date: 2025-07-01

Project overview: ttf-parser

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: fuzz-outline

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 479 100.%
gold [1:9] 0 0.0%
yellow [10:29] 0 0.0%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 0 0.0%
All colors 479 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
478 0 EP call site: 00000 ItemVariationStore::parse_delta

Runtime coverage analysis

Covered functions
2
Functions that are reachable but not covered
31
Reachable functions
31
Percentage of reachable functions covered
0.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
fuzz/fuzz_targets/fuzz-outline.rs 6
src/aat.rs 36
src/parser.rs 11
tests/tables/cmap.rs 5
tests/tables/main.rs 2
tests/tables/cff1.rs 8
c-api/lib.rs 10
src/tables/hvar.rs 5
src/delta_set.rs 11
src/var_store.rs 15
src/lib.rs 24
src/tables/math.rs 5
tests/tables/colr.rs 2

Fuzzer: fuzz-aat

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 169 91.8%
gold [1:9] 0 0.0%
yellow [10:29] 4 2.17%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 11 5.97%
All colors 184 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
78 65 Stream::read_bytes call site: 00065 ItemVariationStore::parse_delta
38 145 Lookup::value call site: 00145 Lookup::parse
30 32 Stream::read_bytes call site: 00032 DeltaSetIndexMap::map
10 3 LazyArray16::len call site: 00003 u16_to_u8_vec
8 17 u16_to_u8_vec call site: 00017 Lookup::parse
4 26 Stream::read_bytes call site: 00026 BinarySearchTable::get
1 0 EP call site: 00000

Runtime coverage analysis

Covered functions
28
Functions that are reachable but not covered
13
Reachable functions
19
Percentage of reachable functions covered
31.58%
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.
Warning: The number of covered functions are larger than the number of reachable functions. This means that there are more functions covered at runtime than are extracted using static analysis. This is likely a result of the static analysis component failing to extract the right call graph or the coverage runtime being compiled with sanitizers in code that the static analysis has not analysed. This can happen if lto/gold is not used in all places that coverage instrumentation is used.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
fuzz/fuzz_targets/fuzz-aat.rs 14
src/parser.rs 11
tests/tables/cff1.rs 1
src/aat.rs 9
src/delta_set.rs 11
c-api/lib.rs 9
src/tables/hvar.rs 5
src/var_store.rs 15
src/lib.rs 4

Fuzzer: fuzz-base

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 902 91.2%
gold [1:9] 1 0.10%
yellow [10:29] 4 0.40%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 81 8.19%
All colors 988 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
215 260 Face::parse_tables call site: 00260 BinarySearchTable::get
174 479 get_fuzzed_char call site: 00479 parse_simple_outline
157 657 LazyArray16::get call site: 00657 parse_simple_outline
147 840 ttf::Face::parse call site: 00840 ItemVariationStore::parse_delta
71 24 RawFace::parse call site: 00024 DeltaSetIndexMap::map
61 110 LazyArray16::len call site: 00110 RegionAxisCoordinatesRecord::evaluate_axis
16 225 Face::parse_tables call site: 00225 BinarySearchTable::get
16 243 Face::parse_tables call site: 00243 BinarySearchTable::get
15 208 Stream::read_bytes call site: 00208 BinarySearchTable::get
11 98 Stream::read_bytes call site: 00098 ItemVariationStore::parse_delta
4 15 RawFace::parse call site: 00015 BinarySearchTable::get
3 202 Face::parse_tables call site: 00202 Stream::read

Runtime coverage analysis

Covered functions
52
Functions that are reachable but not covered
49
Reachable functions
68
Percentage of reachable functions covered
27.94%
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
fuzz/fuzz_targets/fuzz-base.rs 43
src/parser.rs 14
src/aat.rs 38
tests/tables/cmap.rs 5
tests/tables/main.rs 5
tests/tables/cff1.rs 13
c-api/lib.rs 52
src/tables/hvar.rs 6
src/delta_set.rs 11
src/var_store.rs 15
src/lib.rs 31
src/tables/math.rs 5
src/tables/name.rs 8
src/language.rs 2
src/tables/os2.rs 6
tests/tables/colr.rs 5
src/tables/glyf.rs 18
src/tables/svg.rs 5
src/tables/sbix.rs 3
src/tables/vvar.rs 3

Fuzzer: fuzz-cpal

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 145 83.3%
gold [1:9] 0 0.0%
yellow [10:29] 0 0.0%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 29 16.6%
All colors 174 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
95 63 VecPainter::paint call site: 00063 ItemVariationStore::parse_delta
28 31 Stream::read_bytes call site: 00031 BinarySearchTable::get
9 14 Stream::read_bytes call site: 00014 Stream::new_at
4 3 LazyArray16::len call site: 00003 Stream::read
4 8 Stream::read_bytes call site: 00008 BinarySearchTable::get
3 25 Stream::new_at call site: 00025 Stream::read
1 0 EP call site: 00000
1 172 VecPainter::paint call site: 00172

Runtime coverage analysis

Covered functions
174
Functions that are reachable but not covered
2
Reachable functions
8
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.
Warning: The number of covered functions are larger than the number of reachable functions. This means that there are more functions covered at runtime than are extracted using static analysis. This is likely a result of the static analysis component failing to extract the right call graph or the coverage runtime being compiled with sanitizers in code that the static analysis has not analysed. This can happen if lto/gold is not used in all places that coverage instrumentation is used.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
fuzz/fuzz_targets/fuzz-cpal.rs 8
src/parser.rs 10
src/aat.rs 10
tests/tables/colr.rs 10
src/delta_set.rs 11
c-api/lib.rs 9
src/tables/hvar.rs 5
src/var_store.rs 15
src/lib.rs 4

Fuzzer: fuzz-glyph-index

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 395 77.1%
gold [1:9] 6 1.17%
yellow [10:29] 0 0.0%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 111 21.6%
All colors 512 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
57 454 Face::parse_tables call site: 00454 DeltaSetIndexMap::map
50 108 Stream::new_at call site: 00108 RegionAxisCoordinatesRecord::evaluate_axis
48 20 RawFace::parse call site: 00020 convert
21 70 cmap::Subtable4::parse call site: 00070 DeltaSetIndexMap::map
17 258 Face::parse_tables call site: 00258 BinarySearchTable::get
17 279 Face::parse_tables call site: 00279 BinarySearchTable::get
16 222 Face::parse_tables call site: 00222 BinarySearchTable::get
16 240 Face::parse_tables call site: 00240 BinarySearchTable::get
16 298 Face::parse_tables call site: 00298 BinarySearchTable::get
16 317 Face::parse_tables call site: 00317 BinarySearchTable::get
16 342 Face::parse_tables call site: 00342 BinarySearchTable::get
16 367 Face::parse_tables call site: 00367 BinarySearchTable::get

Runtime coverage analysis

Covered functions
353
Functions that are reachable but not covered
13
Reachable functions
28
Percentage of reachable functions covered
53.57%
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.
Warning: The number of covered functions are larger than the number of reachable functions. This means that there are more functions covered at runtime than are extracted using static analysis. This is likely a result of the static analysis component failing to extract the right call graph or the coverage runtime being compiled with sanitizers in code that the static analysis has not analysed. This can happen if lto/gold is not used in all places that coverage instrumentation is used.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
fuzz/fuzz_targets/fuzz-glyph-index.rs 3
src/aat.rs 36
src/parser.rs 11
tests/tables/cmap.rs 5
tests/tables/main.rs 2
tests/tables/cff1.rs 8
c-api/lib.rs 19
src/tables/hvar.rs 5
src/delta_set.rs 11
src/var_store.rs 15
src/lib.rs 24
src/tables/math.rs 5
src/tables/name.rs 1

Fuzzer: fuzz-table

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 662 75.2%
gold [1:9] 65 7.38%
yellow [10:29] 53 6.02%
greenyellow [30:49] 48 5.45%
lawngreen 50+ 52 5.90%
All colors 880 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
115 242 Stream::read_bytes call site: 00242 BinarySearchTable::get
64 136 DeltaSetIndexMap::map call site: 00136 DeltaSetIndexMap::map
61 425 LazyArray16::len call site: 00425 gen_cff
42 690 Table::glyph_class call site: 00690 BinarySearchTable::get
38 600 Constants::read_i16 call site: 00600 BinarySearchTable::get
37 825 vhea::Table::parse call site: 00825 BinarySearchTable::get
35 654 avar::Table::parse call site: 00654 BinarySearchTable::get
34 548 loca::Table::parse call site: 00548 Table::glyph_range
31 387 Subtable0::glyphs_kerning call site: 00387 gen_cff
26 506 DeltaSetIndexMap::map call site: 00506 BinarySearchTable::get
20 209 cmap::Subtable4::parse call site: 00209 convert
20 364 trak::Table::parse call site: 00364 BinarySearchTable::get

Runtime coverage analysis

Covered functions
374
Functions that are reachable but not covered
5
Reachable functions
54
Percentage of reachable functions covered
90.74%
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.
Warning: The number of covered functions are larger than the number of reachable functions. This means that there are more functions covered at runtime than are extracted using static analysis. This is likely a result of the static analysis component failing to extract the right call graph or the coverage runtime being compiled with sanitizers in code that the static analysis has not analysed. This can happen if lto/gold is not used in all places that coverage instrumentation is used.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
fuzz/fuzz_targets/fuzz-table.rs 51
src/parser.rs 12
src/aat.rs 21
c-api/lib.rs 19
src/tables/name.rs 8
src/delta_set.rs 11
src/tables/hvar.rs 5
src/var_store.rs 15
src/lib.rs 5
tests/tables/cmap.rs 11
tests/tables/main.rs 2
tests/tables/cff1.rs 23
src/tables/kerx.rs 4
src/tables/loca.rs 4
src/tables/math.rs 8
src/tables/gdef.rs 2
src/tables/mvar.rs 3
src/tables/stat.rs 1
src/tables/vvar.rs 3

Fuzzer: fuzz-table-with-builder

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 498 89.5%
gold [1:9] 6 1.07%
yellow [10:29] 1 0.17%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 51 9.17%
All colors 556 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
218 337 Face::parse_tables call site: 00337 BinarySearchTable::get
180 60 LazyArray16::get call site: 00060 ItemVariationStore::parse_delta
23 33 Stream::read_bytes call site: 00033 BinarySearchTable::get
16 284 Face::parse_tables call site: 00284 BinarySearchTable::get
16 302 Face::parse_tables call site: 00302 BinarySearchTable::get
16 320 Face::parse_tables call site: 00320 BinarySearchTable::get
9 15 Stream::read_bytes call site: 00015 Stream::new_at
5 278 Face::collect_tables call site: 00278 Face::parse_tables
4 4 LazyArray16::len call site: 00004 Stream::read
4 9 Stream::read_bytes call site: 00009 BinarySearchTable::get
3 27 Stream::new_at call site: 00027 Stream::read
2 0 EP call site: 00000

Runtime coverage analysis

Covered functions
205
Functions that are reachable but not covered
15
Reachable functions
34
Percentage of reachable functions covered
55.88%
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.
Warning: The number of covered functions are larger than the number of reachable functions. This means that there are more functions covered at runtime than are extracted using static analysis. This is likely a result of the static analysis component failing to extract the right call graph or the coverage runtime being compiled with sanitizers in code that the static analysis has not analysed. This can happen if lto/gold is not used in all places that coverage instrumentation is used.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
fuzz/fuzz_targets/fuzz-table-with-builder.rs 9
src/parser.rs 13
src/aat.rs 37
tests/tables/cff1.rs 13
src/tables/glyf.rs 18
c-api/lib.rs 9
src/tables/hvar.rs 5
src/delta_set.rs 11
src/var_store.rs 15
src/lib.rs 24
tests/tables/cmap.rs 5
tests/tables/main.rs 2
src/tables/math.rs 5
tests/tables/colr.rs 2

Fuzzer: fuzz-variable-outline

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 395 71.2%
gold [1:9] 9 1.62%
yellow [10:29] 7 1.26%
greenyellow [30:49] 2 0.36%
lawngreen 50+ 141 25.4%
All colors 554 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
48 20 RawFace::parse call site: 00020 convert
18 108 Stream::new_at call site: 00108 BinarySearchTable::get
18 476 Face::variation_axes call site: 00476 ttfp_get_glyph_hor_advance
17 258 Face::parse_tables call site: 00258 BinarySearchTable::get
17 279 Face::parse_tables call site: 00279 BinarySearchTable::get
16 75 Face::is_variable call site: 00075 DeltaSetIndexMap::map
16 222 Face::parse_tables call site: 00222 BinarySearchTable::get
16 240 Face::parse_tables call site: 00240 BinarySearchTable::get
16 298 Face::parse_tables call site: 00298 BinarySearchTable::get
16 317 Face::parse_tables call site: 00317 BinarySearchTable::get
16 342 Face::parse_tables call site: 00342 BinarySearchTable::get
16 367 Face::parse_tables call site: 00367 BinarySearchTable::get

Runtime coverage analysis

Covered functions
497
Functions that are reachable but not covered
15
Reachable functions
35
Percentage of reachable functions covered
57.14%
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.
Warning: The number of covered functions are larger than the number of reachable functions. This means that there are more functions covered at runtime than are extracted using static analysis. This is likely a result of the static analysis component failing to extract the right call graph or the coverage runtime being compiled with sanitizers in code that the static analysis has not analysed. This can happen if lto/gold is not used in all places that coverage instrumentation is used.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
fuzz/fuzz_targets/fuzz-variable-outline.rs 9
src/aat.rs 36
src/parser.rs 13
tests/tables/cmap.rs 5
tests/tables/main.rs 2
tests/tables/cff1.rs 8
c-api/lib.rs 21
src/tables/hvar.rs 5
src/delta_set.rs 11
src/var_store.rs 15
src/lib.rs 27
src/tables/math.rs 5
src/tables/fvar.rs 2
src/tables/avar.rs 12
tests/tables/colr.rs 2

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.

fuzz/fuzz_targets/fuzz-outline.rs

Dictionary

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


fuzz/fuzz_targets/fuzz-aat.rs

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=['Stream::read_bytes', 'Lookup::value', 'LazyArray16::len', 'u16_to_u8_vec']

fuzz/fuzz_targets/fuzz-base.rs

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=['Face::parse_tables', 'get_fuzzed_char', 'LazyArray16::get', 'ttf::Face::parse', 'RawFace::parse', 'LazyArray16::len', 'Stream::read_bytes']

fuzz/fuzz_targets/fuzz-cpal.rs

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=['VecPainter::paint', 'Stream::read_bytes', 'LazyArray16::len', 'Stream::new_at']

fuzz/fuzz_targets/fuzz-glyph-index.rs

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=['Face::parse_tables', 'Stream::new_at', 'RawFace::parse', 'cmap::Subtable4::parse']

fuzz/fuzz_targets/fuzz-table.rs

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=['Stream::read_bytes', 'DeltaSetIndexMap::map', 'LazyArray16::len', 'Table::glyph_class', 'Constants::read_i16', 'vhea::Table::parse', 'avar::Table::parse', 'loca::Table::parse', 'Subtable0::glyphs_kerning']

fuzz/fuzz_targets/fuzz-table-with-builder.rs

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=['Face::parse_tables', 'LazyArray16::get', 'Stream::read_bytes', 'Face::collect_tables', 'LazyArray16::len']

fuzz/fuzz_targets/fuzz-variable-outline.rs

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=['RawFace::parse', 'Stream::new_at', 'Face::variation_axes', 'Face::parse_tables', 'Face::is_variable']

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/ttf-parser/src/tables/kern.rs [] []
/src/ttf-parser/src/tables/cff/dict.rs [] []
/src/ttf-parser/src/tables/vvar.rs ['fuzz-base', 'fuzz-table'] ['fuzz-table']
/src/ttf-parser/src/aat.rs ['fuzz-outline', 'fuzz-aat', 'fuzz-base', 'fuzz-cpal', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline'] ['fuzz-aat', 'fuzz-base', 'fuzz-cpal', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline']
/src/ttf-parser/tests/tables/cmap.rs ['fuzz-outline', 'fuzz-base', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline'] ['fuzz-variable-outline']
/src/ttf-parser/src/tables/loca.rs ['fuzz-table'] ['fuzz-table']
/src/ttf-parser/fuzz/fuzz_targets/fuzz-aat.rs ['fuzz-aat'] ['fuzz-aat']
/src/ttf-parser/src/tables/cff/encoding.rs [] []
/src/ttf-parser/src/tables/cblc.rs [] []
/src/ttf-parser/src/ggg/chained_context.rs [] []
/src/ttf-parser/src/tables/colr.rs [] []
/src/ttf-parser/tests/tables/maxp.rs [] []
/src/ttf-parser/src/tables/cff/index.rs [] []
/src/ttf-parser/src/var_store.rs ['fuzz-outline', 'fuzz-aat', 'fuzz-base', 'fuzz-cpal', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline'] ['fuzz-aat', 'fuzz-base', 'fuzz-cpal', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline']
/src/ttf-parser/tests/tables/hmtx.rs [] []
/src/ttf-parser/src/tables/cff/cff1.rs [] []
/src/ttf-parser/examples/font-info.rs [] []
/src/ttf-parser/src/tables/cff/argstack.rs [] []
/src/ttf-parser/src/tables/svg.rs ['fuzz-base'] ['fuzz-base']
/src/ttf-parser/tests/tables/sbix.rs [] []
/src/ttf-parser/tests/tables/ankr.rs [] []
/src/ttf-parser/c-api/lib.rs ['fuzz-outline', 'fuzz-aat', 'fuzz-base', 'fuzz-cpal', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline'] []
/src/ttf-parser/fuzz/fuzz_targets/fuzz-table-with-builder.rs ['fuzz-table-with-builder'] []
/src/ttf-parser/tests/tables/trak.rs [] []
/src/ttf-parser/src/tables/name.rs ['fuzz-base', 'fuzz-glyph-index', 'fuzz-table'] ['fuzz-base', 'fuzz-glyph-index', 'fuzz-table']
/src/ttf-parser/src/tables/cff/charset.rs [] []
/src/ttf-parser/fuzz/fuzz_targets/fuzz-base.rs ['fuzz-base'] ['fuzz-base']
/src/ttf-parser/examples/font2svg.rs [] []
/src/ttf-parser/tests/tables/aat.rs [] []
/src/ttf-parser/src/language.rs ['fuzz-base'] []
/src/ttf-parser/tests/tables/cff1.rs ['fuzz-outline', 'fuzz-aat', 'fuzz-base', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline'] ['fuzz-aat', 'fuzz-base', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline']
/src/ttf-parser/src/tables/gvar.rs [] []
/src/ttf-parser/src/tables/cpal.rs [] []
/src/ttf-parser/tests/tables/colr.rs ['fuzz-outline', 'fuzz-base', 'fuzz-cpal', 'fuzz-table-with-builder', 'fuzz-variable-outline'] ['fuzz-cpal', 'fuzz-variable-outline']
/src/ttf-parser/src/tables/math.rs ['fuzz-outline', 'fuzz-base', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline'] ['fuzz-base', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline']
/src/ttf-parser/src/tables/cmap/format14.rs [] []
/src/ttf-parser/src/tables/cmap/format13.rs [] []
/src/ttf-parser/fuzz/fuzz_targets/fuzz-glyph-index.rs ['fuzz-glyph-index'] []
/src/ttf-parser/src/tables/stat.rs ['fuzz-table'] ['fuzz-table']
/src/ttf-parser/fuzz/fuzz_targets/fuzz-table.rs ['fuzz-table'] []
/src/ttf-parser/tests/bitmap.rs [] []
/src/ttf-parser/src/tables/fvar.rs ['fuzz-variable-outline'] ['fuzz-variable-outline']
/src/ttf-parser/src/ggg/lookup.rs [] []
/src/ttf-parser/src/tables/cmap/format12.rs [] []
/src/ttf-parser/src/tables/post.rs [] []
/src/ttf-parser/src/ggg/feature_variations.rs [] []
/src/ttf-parser/src/ggg/mod.rs [] []
/src/ttf-parser/benches/methods_perf_x1000.rs [] []
/src/ttf-parser/src/tables/sbix.rs ['fuzz-base'] ['fuzz-base']
/src/ttf-parser/src/tables/cff/mod.rs [] []
/src/ttf-parser/src/delta_set.rs ['fuzz-outline', 'fuzz-aat', 'fuzz-base', 'fuzz-cpal', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline'] ['fuzz-aat', 'fuzz-base', 'fuzz-cpal', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline']
/src/ttf-parser/src/tables/cmap/mod.rs [] []
/src/ttf-parser/benches/methods_perf.rs [] []
/src/ttf-parser/src/tables/cmap/format2.rs [] []
/src/ttf-parser/src/tables/cmap/format4.rs [] []
/src/ttf-parser/src/tables/cmap/format6.rs [] []
/src/ttf-parser/src/tables/mvar.rs ['fuzz-table'] ['fuzz-table']
/src/ttf-parser/src/tables/kerx.rs ['fuzz-table'] ['fuzz-table']
/src/ttf-parser/src/tables/ankr.rs [] []
/src/ttf-parser/tests/tables/main.rs ['fuzz-outline', 'fuzz-base', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline'] []
/src/ttf-parser/src/tables/feat.rs [] []
/src/ttf-parser/fuzz/fuzz_targets/fuzz-outline.rs ['fuzz-outline'] []
/src/ttf-parser/src/parser.rs ['fuzz-outline', 'fuzz-aat', 'fuzz-base', 'fuzz-cpal', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline'] ['fuzz-aat', 'fuzz-base', 'fuzz-cpal', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline']
/src/ttf-parser/src/tables/cff/cff2.rs [] []
/src/ttf-parser/fuzz/fuzz_targets/fuzz-variable-outline.rs ['fuzz-variable-outline'] ['fuzz-variable-outline']
/src/ttf-parser/src/ggg/context.rs [] []
/src/ttf-parser/src/tables/trak.rs [] []
/src/ttf-parser/src/tables/cmap/format10.rs [] []
/src/ttf-parser/src/tables/cff/charstring.rs [] []
/src/ttf-parser/src/ggg/layout_table.rs [] []
/src/ttf-parser/src/tables/cmap/format0.rs [] []
/src/ttf-parser/src/tables/gdef.rs ['fuzz-table'] ['fuzz-table']
/src/ttf-parser/src/tables/morx.rs [] []
/src/ttf-parser/src/tables/hvar.rs ['fuzz-outline', 'fuzz-aat', 'fuzz-base', 'fuzz-cpal', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline'] []
/src/ttf-parser/src/tables/vorg.rs [] []
/src/ttf-parser/src/tables/avar.rs ['fuzz-variable-outline'] ['fuzz-variable-outline']
/src/ttf-parser/tests/tables/glyf.rs [] []
/src/ttf-parser/src/tables/gsub.rs [] []
/src/ttf-parser/src/tables/glyf.rs ['fuzz-base', 'fuzz-table-with-builder'] ['fuzz-base', 'fuzz-table-with-builder']
/src/ttf-parser/src/tables/os2.rs ['fuzz-base'] ['fuzz-base']
/src/ttf-parser/fuzz/fuzz_targets/fuzz-cpal.rs ['fuzz-cpal'] ['fuzz-cpal']
/src/ttf-parser/src/tables/gpos.rs [] []
/src/ttf-parser/src/tables/hmtx.rs [] []
/src/ttf-parser/src/lib.rs ['fuzz-outline', 'fuzz-aat', 'fuzz-base', 'fuzz-cpal', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline'] ['fuzz-aat', 'fuzz-base', 'fuzz-cpal', 'fuzz-glyph-index', 'fuzz-table', 'fuzz-table-with-builder', 'fuzz-variable-outline']

Directories in report

Directory
/src/ttf-parser/c-api/
/src/ttf-parser/src/tables/cmap/
/src/ttf-parser/src/
/src/ttf-parser/src/tables/cff/
/src/ttf-parser/benches/
/src/ttf-parser/src/ggg/
/src/ttf-parser/fuzz/fuzz_targets/
/src/ttf-parser/tests/tables/
/src/ttf-parser/examples/
/src/ttf-parser/tests/
/src/ttf-parser/src/tables/