Back to GNU Libtasn1 Homepage

GNU Libtasn1 Cyclomatic Complexity Report

Report generated at: Tue Oct 25 19:43:07 CEST 2011

Summary
Total number of functions 98
Number of low risk functions 64
Number of moderate risk functions 17
Number of high risk functions 10
Number of untestable functions 7

Details for all functions
  Cyclomatic Complexity Risk Evaluation
  0 - 10 Simple module, without much risk
  11 - 20 More complex module, moderate risk
  21 - 50 Complex module, high risk
  greater than 50 Untestable module, very high risk

Function Name Modified Cyclo Number of
Statements
Number of
Lines
Source File
asn1_der_decoding_element 142 400 743 ../../lib/decoding.c
asn1_der_decoding 106 304 527 ../../lib/decoding.c
asn1_write_value 97 208 343 ../../lib/element.c
asn1_print_structure 81 235 349 ../../lib/structure.c
asn1_der_decoding_startEnd 72 188 320 ../../lib/decoding.c
asn1_der_coding 70 226 357 ../../lib/coding.c
_asn1_extract_tag_der 61 105 197 ../../lib/decoding.c
yyparse 48 432 1199 ../../lib/ASN1.c
_asn1_expand_object_id 44 95 169 ../../lib/parser_aux.c
_asn1_yylex 44 54 80 ../../lib/ASN1.c
asn1_expand_any_defined_by 43 101 211 ../../lib/decoding.c
asn1_read_value 37 83 161 ../../lib/element.c
_asn1_check_identifier 26 50 91 ../../lib/parser_aux.c
_asn1_expand_identifier 25 68 107 ../../lib/structure.c
_asn1_ordering_set_of 23 72 124 ../../lib/coding.c
asn1_expand_octet_string 22 65 123 ../../lib/decoding.c
asn1_array2tree 21 53 97 ../../lib/structure.c
_asn1_insert_tag_der 20 75 151 ../../lib/coding.c
asn1_find_node 20 50 95 ../../lib/parser_aux.c
_asn1_type_choice_config 20 47 83 ../../lib/structure.c
_asn1_get_octet_string 17 47 82 ../../lib/decoding.c
_asn1_ordering_set 16 59 104 ../../lib/coding.c
yysyntax_error 15 62 100 ../../lib/ASN1.c
_asn1_convert_integer 15 35 50 ../../lib/element.c
asn1_read_tag 14 51 99 ../../lib/element.c
_asn1_objectid_der 14 46 71 ../../lib/coding.c
_asn1_type_set_config 14 30 58 ../../lib/parser_aux.c
_asn1_get_objectid_der 13 39 60 ../../lib/decoding.c
_asn1_delete_not_used 13 30 58 ../../lib/decoding.c
_asn1_set_default_tag 13 22 47 ../../lib/parser_aux.c
_asn1_create_static_structure 12 41 78 ../../lib/structure.c
_asn1_copy_structure3 12 37 67 ../../lib/structure.c
_asn1_change_integer_value 12 28 56 ../../lib/parser_aux.c
asn1_get_tag_der 11 24 44 ../../lib/decoding.c
  _asn1_get_indefinite_length_string 10 27 49 ../../lib/decoding.c
  _asn1_complete_explicit_tag 10 26 56 ../../lib/coding.c
  asn1_parser2array 9 48 95 ../../lib/ASN1.c
  asn1_find_structure_from_oid 9 23 43 ../../lib/structure.c
  asn1_delete_structure 8 25 50 ../../lib/structure.c
  yytnamerr 8 20 38 ../../lib/ASN1.c
  _asn1_append_value 7 22 39 ../../lib/parser_aux.c
  _asn1_extract_der_octet 7 20 44 ../../lib/decoding.c
  asn1_get_length_der 7 20 43 ../../lib/decoding.c
  _asn1_append_sequence_set 7 20 33 ../../lib/element.c
  _asn1_set_value 7 17 31 ../../lib/parser_aux.c
  _asn1_create_errorDescription 7 29 42 ../../lib/ASN1.c
  asn1_parser2tree 6 26 58 ../../lib/ASN1.c
  asn1_length_der 6 15 31 ../../lib/coding.c
  _asn1_set_name 6 13 25 ../../lib/parser_aux.c
  asn1_number_of_elements 6 13 25 ../../lib/structure.c
  _asn1_remove_node 5 7 12 ../../lib/parser_aux.c
  asn1_copy_node 5 21 40 ../../lib/structure.c
  asn1_delete_element 5 14 25 ../../lib/structure.c
  _asn1_set_value_m 5 12 22 ../../lib/parser_aux.c
  _asn1_get_time_der 5 10 17 ../../lib/decoding.c
  _asn1_find_up 4 7 15 ../../lib/parser_aux.c
  _asn1_find_left 4 3 8 ../../lib/structure.c
  _asn1_ltostr 4 22 32 ../../lib/parser_aux.c
  _asn1_tag_der 4 14 29 ../../lib/coding.c
  _asn1_hierarchical_name 4 12 25 ../../lib/element.c
  asn1_get_bit_der 4 12 25 ../../lib/decoding.c
  asn1_get_octet_der 4 11 26 ../../lib/decoding.c
  _asn1_time_der 4 11 19 ../../lib/coding.c
  yy_symbol_value_print 4 6 24 ../../lib/ASN1.c
  asn1_get_length_ber 3 9 17 ../../lib/decoding.c
  asn1_strerror 3 7 11 ../../lib/errors.c
  _asn1_get_last_right 3 7 12 ../../lib/parser_aux.c
  _asn1_str_cat 3 7 19 ../../lib/gstr.c
  _asn1_str_cpy 3 6 18 ../../lib/gstr.c
  _asn1_set_down 3 6 10 ../../lib/parser_aux.c
  _asn1_set_right 3 6 10 ../../lib/parser_aux.c
  asn1_octet_der 3 6 12 ../../lib/coding.c
  asn1_check_version 3 3 8 ../../lib/version.c
  _asn1_add_node 3 14 25 ../../lib/parser_aux.c
  asn1_bit_der 3 13 20 ../../lib/coding.c
  _asn1_set_value_octet 3 10 17 ../../lib/parser_aux.c
  yydestruct 3 5 32 ../../lib/ASN1.c
  yy_stack_print 2 7 17 ../../lib/ASN1.c
  _asn1_delete_list_and_nodes 2 6 13 ../../lib/parser_aux.c
  _asn1_add_node_only 2 6 13 ../../lib/structure.c
  yystrlen 2 6 24 ../../lib/ASN1.c
  yy_symbol_print 2 5 18 ../../lib/ASN1.c
  _asn1_delete_list 2 5 12 ../../lib/parser_aux.c
  _asn1_error_description_value_not_found 2 5 14 ../../lib/coding.c
  yystpcpy 2 5 17 ../../lib/ASN1.c
  _asn1_mod_type 2 4 8 ../../lib/parser_aux.c
  _asn1_yyerror 2 4 14 ../../lib/ASN1.c
  asn1_perror 2 3 6 ../../lib/errors.c
  _asn1_get_name 2 3 7 ../../lib/parser_aux.c
  _asn1_get_down 2 3 7 ../../lib/parser_aux.c
  _asn1_get_right 2 3 7 ../../lib/parser_aux.c
  asn1_create_element 2 10 21 ../../lib/structure.c
  yy_reduce_print 2 10 24 ../../lib/ASN1.c
  _asn1_copy_structure2 1 3 10 ../../lib/structure.c
  _asn1_error_description_tag_error 1 3 10 ../../lib/decoding.c
  YYID 1 1 10 ../../lib/ASN1.c
  libtasn1_strerror 1 1 5 ../../lib/errors.c
  libtasn1_perror 1 1 5 ../../lib/errors.c

Copyright (c) 2007, 2008 Free Software Foundation, Inc.