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: lys_parse_mem

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 3896 53.0%
gold [1:9] 216 2.93%
yellow [10:29] 136 1.85%
greenyellow [30:49] 35 0.47%
lawngreen 50+ 3066 41.7%
All colors 7349 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
436 6406 lyxp_vars_find call site: 06406 lyd_insert_node
301 5682 lydict_insert call site: 05682 lyb_print_data
264 6019 lys_unres_glob_erase call site: 06019 lyb_print_siblings
230 4472 lyxp_expr_dup call site: 04472 lys_apply_deviation
173 1083 lysp_check_enum_name call site: 01083 yin_parse_content
160 3805 lys_parse_localfile call site: 03805 lys_parse_submodule
153 5523 moveto_resolve_module call site: 05523 eval_name_test_try_compile_predicates
122 1619 lysp_check_date call site: 01619 yin_parse_content
111 872 ly_set_free call site: 00872 yin_parse_action
94 5407 lysc_node_when call site: 05407 set_sort
92 5046 ly_path_compile_predicate_leafref call site: 05046 ly_path_compile_predicate
86 992 _lydict_remove call site: 00992 yin_parse_content

Runtime coverage analysis

Covered functions
613
Functions that are reachable but not covered
498
Reachable functions
971
Percentage of reachable functions covered
48.71%
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
build/../tests/fuzz/lys_parse_mem.c 1
src/log.c 16
src/context.c 27
src/ly_common.c 28
src/dict.c 14
src/hash_table.c 21
src/hash_table_internal.h 1
src/plugins.c 7
src/set.c 10
src/tree_data_free.c 12
src/tree_data.c 42
src/in.c 7
src/tree_schema.c 40
src/parser_yin.c 76
src/xml.c 21
src/tree_data_common.c 19
src/tree_data.h 3
src/tree_schema_common.c 57
src/plugins_exts.c 5
src/path.c 16
src/xpath.c 126
compat/compat.c 1
src/tree_schema_free.c 50
src/parser_yang.c 60
src/parser_common.c 2
src/schema_features.c 15
src/schema_compile.c 37
src/schema_compile_amend.c 39
src/schema_compile_node.c 18
src/plugins_types.c 1
src/lyb.c 8
src/out.c 8
src/printer_data.c 2
src/printer_xml.c 13
src/printer_json.c 27
src/printer_lyb.c 33
src/validation.c 2
src/plugins_exts/metadata.h 1
src/tree_data_new.c 4
src/tree_data_hash.c 5
src/tree_data_sorted.c 29

Fuzzer: lyd_parse_mem_xml

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 6296 68.6%
gold [1:9] 65 0.70%
yellow [10:29] 56 0.61%
greenyellow [30:49] 13 0.14%
lawngreen 50+ 2743 29.9%
All colors 9173 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
315 7647 lyd_parse_xml call site: 07647 lyd_parse_json
301 5682 lydict_insert call site: 05682 lyb_print_data
295 8120 lyd_child_no_keys call site: 08120 lyd_diff_merge_all
230 4472 lyxp_expr_dup call site: 04472 lys_apply_deviation
216 8735 lydxml_subtree_inner call site: 08735 lyd_parse_lyb
192 6019 lys_unres_glob_erase call site: 06019 lyb_print_siblings
186 8422 rb_iter_next call site: 08422 lyd_validate_choice_r
174 1082 lysp_check_enum_name call site: 01082 yin_parse_content
160 3805 lys_parse_localfile call site: 03805 lys_parse_submodule
122 1619 lysp_check_date call site: 01619 yin_parse_content
110 873 ly_store_prefix_data call site: 00873 yin_parse_action
109 3256 ly_set_contains call site: 03256 lysdict_insert

Runtime coverage analysis

Covered functions
724
Functions that are reachable but not covered
610
Reachable functions
1204
Percentage of reachable functions covered
49.34%
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
build/../tests/fuzz/lyd_parse_mem_xml.c 1
src/log.c 16
src/context.c 27
src/ly_common.c 28
src/dict.c 15
src/hash_table.c 21
src/hash_table_internal.h 1
src/plugins.c 7
src/set.c 11
src/tree_data_free.c 13
src/tree_data.c 62
src/in.c 7
src/tree_schema.c 40
src/parser_yin.c 76
src/xml.c 25
src/tree_data_common.c 37
src/tree_data.h 3
src/tree_schema_common.c 57
src/plugins_exts.c 5
src/path.c 16
src/xpath.c 126
compat/compat.c 1
src/tree_schema_free.c 50
src/parser_yang.c 60
src/parser_common.c 12
src/schema_features.c 15
src/schema_compile.c 37
src/schema_compile_amend.c 39
src/schema_compile_node.c 18
src/plugins_types.c 1
src/lyb.c 8
src/out.c 8
src/printer_data.c 2
src/printer_xml.c 13
src/printer_json.c 27
src/printer_lyb.c 33
src/validation.c 35
src/plugins_exts/metadata.h 1
src/tree_data_new.c 18
src/tree_data_hash.c 5
src/tree_data_sorted.c 39
src/parser_xml.c 16
src/parser_json.c 22
src/json.c 21
src/diff.c 26
src/parser_lyb.c 34

Fuzzer: lyd_parse_mem_json

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 6202 67.6%
gold [1:9] 81 0.88%
yellow [10:29] 49 0.53%
greenyellow [30:49] 110 1.19%
lawngreen 50+ 2731 29.7%
All colors 9173 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
301 5682 lydict_insert call site: 05682 lyb_print_data
295 8120 lyd_child_no_keys call site: 08120 lyd_diff_merge_all
230 4472 lyxp_expr_dup call site: 04472 lys_apply_deviation
209 8742 lyd_parse call site: 08742 lyd_parse_lyb
192 6019 lys_unres_glob_erase call site: 06019 lyb_print_siblings
186 8422 rb_iter_next call site: 08422 lyd_validate_choice_r
174 1082 lysp_check_enum_name call site: 01082 yin_parse_content
160 3805 lys_parse_localfile call site: 03805 lys_parse_submodule
122 1619 lysp_check_date call site: 01619 yin_parse_content
111 872 ly_set_free call site: 00872 yin_parse_action
109 3256 ly_set_contains call site: 03256 lysdict_insert
92 5256 eval_path_expr call site: 05256 xpath_pi_node

Runtime coverage analysis

Covered functions
742
Functions that are reachable but not covered
599
Reachable functions
1204
Percentage of reachable functions covered
50.25%
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
build/../tests/fuzz/lyd_parse_mem_json.c 1
src/log.c 16
src/context.c 27
src/ly_common.c 28
src/dict.c 15
src/hash_table.c 21
src/hash_table_internal.h 1
src/plugins.c 7
src/set.c 11
src/tree_data_free.c 13
src/tree_data.c 62
src/in.c 7
src/tree_schema.c 40
src/parser_yin.c 76
src/xml.c 25
src/tree_data_common.c 37
src/tree_data.h 3
src/tree_schema_common.c 57
src/plugins_exts.c 5
src/path.c 16
src/xpath.c 126
compat/compat.c 1
src/tree_schema_free.c 50
src/parser_yang.c 60
src/parser_common.c 12
src/schema_features.c 15
src/schema_compile.c 37
src/schema_compile_amend.c 39
src/schema_compile_node.c 18
src/plugins_types.c 1
src/lyb.c 8
src/out.c 8
src/printer_data.c 2
src/printer_xml.c 13
src/printer_json.c 27
src/printer_lyb.c 33
src/validation.c 35
src/plugins_exts/metadata.h 1
src/tree_data_new.c 18
src/tree_data_hash.c 5
src/tree_data_sorted.c 39
src/parser_xml.c 16
src/parser_json.c 22
src/json.c 21
src/diff.c 26
src/parser_lyb.c 34

Analyses and suggestions

Optimal target analysis

Remaining optimal interesting functions

The following table shows a list of functions that are optimal targets. Optimal targets are identified by finding the functions that in combination, yield a high code coverage.

Func name Functions filename Arg count Args Function depth hitcount instr count bb count cyclomatic complexity Reachable functions Incoming references total cyclomatic complexity Unreached complexity
structure_compile /src/libyang/src/plugins_exts/structure.c 3 ['N/A', 'N/A', 'N/A'] 32 0 619 32 13 306 0 4190 1020
structure_aug_parse /src/libyang/src/plugins_exts/structure.c 2 ['N/A', 'N/A'] 29 0 551 37 15 189 0 2266 973
yang_print_parsed_submodule /src/libyang/src/printer_yang.c 3 ['N/A', 'N/A', 'int'] 37 0 424 54 20 98 0 856 542
schema_mount_validate /src/libyang/src/plugins_exts/schema_mount.c 6 ['N/A', 'N/A', 'N/A', 'int', 'int', 'N/A'] 54 0 539 91 35 833 0 10441 483
lyd_diff_siblings_r /src/libyang/src/diff.c 5 ['N/A', 'N/A', 'short', 'char', 'N/A'] 48 0 945 180 61 722 4 8792 364
schema_mount_compiled_print /src/libyang/src/plugins_exts/schema_mount.c 5 ['N/A', 'N/A', 'N/A', 'N/A', 'N/A'] 22 0 386 21 9 183 0 1443 317
lyd_diff_reverse_siblings_r /src/libyang/src/diff.c 2 ['N/A', 'N/A'] 47 0 1201 251 82 725 2 8596 238

Implementing fuzzers that target the above functions will improve reachability such that it becomes:

Functions statically reachable by fuzzers
70.0%
1357 / 1951
Cyclomatic complexity statically reachable by fuzzers
78.0%
20156 / 26002

All functions overview

If you implement fuzzers for these functions, the status of all functions in the project will be:

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

Runtime coverage analysis

This section shows analysis of runtime coverage data.

For futher technical details on how this section is generated, please see the Glossary .

Complex functions with low coverage

Func name Function total lines Lines covered at runtime percentage covered Reached by fuzzers
log_store 63 25 39.68% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
ly_ctx_data_add 31 17 54.83% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_parser_fill_filepath 34 15 44.11% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_parser_ext_instance_stmt 122 39 31.96% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lysp_stmt_parse 207 26 12.56% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lysp_stmt_type_enum 44 18 40.90% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lysp_stmt_type 79 30 37.97% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_compile_ext_instance_stmt 181 35 19.33% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lyplg_type_store_date_and_time 70 18 25.71% ['lys_parse_mem']
lys_compile_identity_circular_check 34 8 23.52% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_compile_unres_check_disabled 52 9 17.30% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_precompile_uses_augments_refines 63 17 26.98% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lysp_dev_node_free 46 4 8.695% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_compile_node_deviations_refines 51 14 27.45% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_precompile_own_deviations 50 12 24.0% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_precompile_augments_deviations 37 18 48.64% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_compile_augment_children 63 16 25.39% ['lys_parse_mem']
lys_compile_type_range 200 64 32.0% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_compile_type_enums 135 69 51.11% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_compile_type_ 302 162 53.64% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_compile_node_list 139 73 52.51% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_compile_node_list_unique 64 28 43.75% ['lys_parse_mem']
lysc_resolve_schema_nodeid 115 59 51.30% ['lys_parse_mem']
lys_set_features 46 10 21.73% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_search_localfile 136 61 44.85% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_ext_find_node 41 19 46.34% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_unres_dep_sets_create_mod_r 66 35 53.03% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_search_localfile_file_type 50 24 48.0% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lysp_load_submodules 41 17 41.46% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lysp_ext_instance_resolve_argument 48 6 12.5% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lys_parse_localfile 35 18 51.42% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lysc_node_free 56 29 51.78% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lyplg_ext_pfree_instance_substatements 138 39 28.26% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lyplg_ext_cfree_instance_substatements 130 33 25.38% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lysc_ident_derived_unlink 69 20 28.98% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
moveto_scnode_check 39 21 53.84% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
moveto_attr_alldesc 48 7 14.58% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
set_copy 48 22 45.83% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
moveto_attr 34 5 14.70% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
moveto_node_alldesc_child 54 8 14.81% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
xpath_pi_text 34 6 17.64% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
xpath_sum 48 24 50.0% ['lys_parse_mem']
xpath_lang 70 18 25.71% ['lys_parse_mem']
xpath_name 56 9 16.07% ['lys_parse_mem']
xpath_substring 71 32 45.07% ['lys_parse_mem']
xpath_translate 71 31 43.66% ['lys_parse_mem']
xpath_local_name 45 7 15.55% ['lys_parse_mem']
xpath_enum_value 32 17 53.12% ['lys_parse_mem']
xpath_bit_is_set 54 28 51.85% ['lys_parse_mem']
xpath_derived_ 93 33 35.48% ['lys_parse_mem']
xpath_namespace_uri 49 8 16.32% ['lys_parse_mem']
xpath_normalize_space 65 19 29.23% ['lys_parse_mem']
lyd_parser_find_operation 36 6 16.66% ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
lyd_parser_check_schema 55 11 20.0% ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
lyd_parser_set_data_flags 38 14 36.84% ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
lydxml_data_check_opaq 41 7 17.07% ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
lyplg_type_resolve_leafref 89 39 43.82% ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
lyplg_type_resolve_leafref_get_target_path 46 24 52.17% ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
lyd_find_sibling_first 70 32 45.71% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lyd_get_or_create_leafref_links_record 32 13 40.62% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lyd_compare_single_data 95 42 44.21% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lyd_compare_single_value 52 21 40.38% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lyd_first_module_sibling 40 18 45.0% ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
lyd_new_implicit 109 43 39.44% ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
lyd_validate_unres 52 28 53.84% ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
lyd_validate_unres_when 39 8 20.51% ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
lyd_validate_must 61 18 29.50% ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
lyd_validate_minmax 65 19 29.23% ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
lyxp_set_cast 112 25 22.32% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
moveto_op_comp 75 30 40.0% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
set_comp_canonize 31 16 51.61% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
print_set_debug 102 8 7.843% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
set_sort_compare 40 8 20.0% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
moveto_axis_node_next 67 20 29.85% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
moveto_axis_node_next_first 73 32 43.83% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
eval_name_test_with_predicate_get_scnode 56 29 51.78% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
cast_string_recursive 104 29 27.88% ['lys_parse_mem', 'lyd_parse_mem_json', 'lyd_parse_mem_xml']
lyjson_token2str 33 16 48.48% ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
lyplg_type_sort_uint 43 12 27.90% ['lyd_parse_mem_json']
lyplg_type_print_u_int 54 21 38.88% ['lyd_parse_mem_json']
lyd_parse_opaq_error 92 21 22.82% ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
lyd_validate_autodel_node_del 39 15 38.46% ['lyd_parse_mem_xml', 'lyd_parse_mem_json']

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/libyang/src/printer_yang.c [] []
/src/libyang/src/plugins_types/lyds_tree.c [] []
/src/libyang/src/plugins_types/empty.c [] []
/src/libyang/src/plugins_types/enumeration.c [] []
/src/libyang/src/set.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/parser_yin.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] []
/src/libyang/src/tree_schema_free.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/tree_data.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/validation.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_types/date.c [] []
/src/libyang/src/plugins_exts/nacm.c [] []
/src/libyang/src/xpath.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_types/time.c [] []
/src/libyang/src/plugins_types/hex_string.c [] []
/src/libyang/src/ly_common.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_exts/structure.c [] []
/src/libyang/src/plugins_types/ipv4_address_no_zone.c [] []
/src/libyang/src/xml.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lyd_parse_mem_xml']
/src/libyang/src/plugins_types/union.c [] []
/src/libyang/build/../tests/fuzz/lyd_parse_mem_xml.c ['lyd_parse_mem_xml'] []
/src/libyang/src/in.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/printer_context.c [] []
/src/libyang/src/plugins_exts/yangdata.c [] []
/src/libyang/src/plugins_types/ipv6_address.c [] []
/src/libyang/src/tree_schema.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_types/string.c [] []
/src/libyang/src/plugins_types/bits.c [] []
/src/libyang/src/json.c ['lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lyd_parse_mem_json']
/src/libyang/src/parser_xml.c ['lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lyd_parse_mem_xml']
/src/libyang/src/log.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_types/ipv4_address.c [] []
/src/libyang/src/plugins_types/identityref.c [] []
/src/libyang/build/../tests/fuzz/lyd_parse_mem_json.c ['lyd_parse_mem_json'] []
/src/libyang/src/hash_table.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_types/date_and_time.c [] []
/src/libyang/src/tree_data_hash.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/printer_lyb.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] []
/src/libyang/src/parser_json.c ['lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lyd_parse_mem_json']
/src/libyang/src/hash_table_internal.h ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/tree_data_common.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_types/ipv6_address_no_zone.c [] []
/src/libyang/src/schema_compile.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/tree_data_free.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/printer_data.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] []
/src/libyang/src/schema_features.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/printer_xml.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] []
/src/libyang/src/parser_yang.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_types/ipv6_address_prefix.c [] []
/src/libyang/src/plugins_types/node_instanceid.c [] []
/src/libyang/build/../tests/fuzz/lys_parse_mem.c ['lys_parse_mem'] []
/src/libyang/src/tree_data_new.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_types/xpath1.0.c [] []
/src/libyang/src/context.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_types/binary.c [] []
/src/libyang/src/parser_common.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_types/instanceid_keys.c [] []
/src/libyang/src/plugins_exts/metadata.c [] []
/src/libyang/src/parser_lyb.c ['lyd_parse_mem_xml', 'lyd_parse_mem_json'] []
/src/libyang/src/out.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] []
/src/libyang/src/plugins_types/leafref.c [] []
/src/libyang/src/tree_data.h ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/schema_compile_node.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/diff.c ['lyd_parse_mem_xml', 'lyd_parse_mem_json'] []
/src/libyang/src/plugins_exts/schema_mount.c [] []
/src/libyang/src/tree_schema_common.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/schema_compile_amend.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/printer_json.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] []
/src/libyang/src/plugins_types/integer.c [] []
/src/libyang/src/plugins_types.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_exts/openconfig.c [] []
/src/libyang/src/dict.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_exts/metadata.h ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] []
/src/libyang/src/tree_data_sorted.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_exts.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_types/decimal64.c [] []
/src/libyang/src/path.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/plugins_types/ipv4_address_prefix.c [] []
/src/libyang/src/plugins_types/time_period.c [] []
/src/libyang/src/plugins_types/boolean.c [] []
/src/libyang/compat/compat.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json']
/src/libyang/src/lyb.c ['lys_parse_mem', 'lyd_parse_mem_xml', 'lyd_parse_mem_json'] []
/src/libyang/src/plugins_types/instanceid.c [] []

Directories in report

Directory
/src/libyang/compat/
/src/libyang/build/../tests/fuzz/
/src/libyang/src/plugins_types/
/src/libyang/src/plugins_exts/
/src/libyang/src/