Back to libtasn1 Homepage

libtasn1 Cyclomatic Complexity Report

Report generated at: Fri Jan 16 13:00:10 CET 2009

Resume

Total number of functions 100
Number of low risk functions 66
Number of moderate risk functions 17
Number of high risk functions 9
Number of untestable functions 8

Details for all functions

Used ranges:

  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 Cyclomatic
Complexity
Number of
Statements
Number of
Lines
Source File
asn1_der_decoding_element 154 399 738 lib/decoding.c
asn1_der_decoding 118 301 520 lib/decoding.c
asn1_write_value 111 207 342 lib/element.c
asn1_print_structure 125 235 349 lib/structure.c
asn1_der_decoding_startEnd 85 188 320 lib/decoding.c
asn1_der_coding 83 226 357 lib/coding.c
_asn1_extract_tag_der 74 105 197 lib/decoding.c
yyparse 145 431 1015 lib/ASN1.c
_asn1_expand_object_id 44 95 169 lib/parser_aux.c
_asn1_yylex 44 53 79 lib/ASN1.c
asn1_expand_any_defined_by 43 101 211 lib/decoding.c
asn1_read_value 47 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 35 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 52 lib/element.c
asn1_read_tag 29 51 101 lib/element.c
_asn1_objectid_der 14 44 69 lib/coding.c
_asn1_type_set_config 14 30 58 lib/parser_aux.c
asn1_check_version 14 15 30 lib/parser_aux.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_get_objectid_der 10 27 40 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 11 20 38 lib/ASN1.c
  asn1_get_length_der 7 20 43 lib/decoding.c
  _asn1_extract_der_octet 7 20 40 lib/decoding.c
  _asn1_append_sequence_set 7 20 33 lib/element.c
  _asn1_create_errorDescription 11 29 42 lib/ASN1.c
  asn1_parser2tree 6 26 58 lib/ASN1.c
  asn1_length_der 6 15 31 lib/coding.c
  parse_version_string 6 15 21 lib/parser_aux.c
  _asn1_set_name 6 13 25 lib/parser_aux.c
  asn1_number_of_elements 6 13 25 lib/structure.c
  asn1_copy_node 5 21 40 lib/structure.c
  asn1_delete_element 5 14 25 lib/structure.c
  _asn1_set_value 5 14 23 lib/parser_aux.c
  parse_version_number 5 11 15 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_remove_node 4 7 12 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_append_value 4 12 21 lib/parser_aux.c
  _asn1_set_value_m 4 11 21 lib/parser_aux.c
  asn1_get_octet_der 4 11 26 lib/decoding.c
  _asn1_time_der 4 11 19 lib/coding.c
  yy_symbol_value_print 3 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_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 2 5 32 lib/ASN1.c
  yy_stack_print 2 6 14 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
  yy_reduce_print 2 10 24 lib/ASN1.c
  asn1_create_element 2 10 21 lib/structure.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

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